zoukankan      html  css  js  c++  java
  • es6.4基本概念(中文翻译)

    有几个概念是es的核心,了解这个概念 在最开始了解这些概念可以帮助我们极大的简化学习过程 近乎实时(NRT) es是一个近乎实时的搜索平台,这意味着它有存在一些延迟

    集群

    一个集群是一个或多个节点(服务器)来掌控你的所有数据以及提供联合索引和跨所有节点的搜索功能 一哥集群通过一个唯一的名字来区分,默认为“elaticsearch",这个名字很重要,因为节点通过只有通过识别集群的名字才能成为这个集群的一部分 确认你没有在不同的环境中用同一个集群名称,否则可能会因为节点加入错误的集群导致集群挂掉,举个栗子, 你可以用logging-dev, logging-stage, and logging-prod分别标志开发、准备和生产三个集群。 只有一个节点的集群也是有效和完美的,此外你也可以有多个独立的拥有各自不同名字的集群。

    节点

    一个节点是你的集群中一个独立的服务器,存储你的数据,并且参与集群的索引索引和搜索功能,就像一个集群,节点开始的时候默认的随机独立名字来定义自己,你也可以定义自己想要定义的名字,这个名字也很重要,因为通过名字可以达到在es集群中找到对应节点的目的。

    节点可以通过集群的名字找到特定的集群加入,默认情况下,每个节点初始化为加入一个名为"elasticsearch"的集群,这意味着如果你要在你的网络中启动一定数量的节点,要确保他们能够互相发现,否则他们就将自行组织加入一个名为“elasticsearch”的集群中

    索引

    一个索引是一些有相似特性的文档的集合,举个栗子,你可以有一个索引来存储消费者数据,一个索引来存储商品目录,一个索引来存储订单数据。

    索引通过名字互相区分(名字必须小写)

    名字在索引,查询,更新,删除等针对这索引操作的时候进行使用。

    类型(6.0.0版本中弃用)

    类型用来定义索引中逻辑类别和分区,允许你在同一个索引中存储不同类型的文档,

    比如说用户一个类型,博客发布者一个类型。在一个索引中创建多个类型是不可能了,

    之后的版本中会将类型这个概念删除。

    文档

    文档是一个可被索引的简单信息,举个栗子,你可以有一条存储一个顾客信息的文档,一条用来存放一个商品信息,另一条存储一个订单信息。文档用json格式存储(一种无处不在的网络数据交换格式),

    在一个索引中,你想存储多少文档就存多少,注意虽然一个文档虽然物理存储在一个索引中,实际上必须要指定这个索引中的一个索引和分配的类型。

    分片和副本

    一个索引潜在情况下存储大量的数据可能会超过一个节点的硬盘存储限制。举个栗子,一个索引存储了

    十亿个文档需要1T的磁盘空间,可能会影响节点的搜索速度,对于节点来说可能不太合适。

    为了解决这个问题,es提供了分片这个概念,分片可以将你的索引划分为多个部分叫做分片,当你创建一个索引,你可以简单的定义你想定义的分片数量,每个分片是一个功能齐全的独立的“小索引”,可以托管在集群的任何节点中。

    分片的重要程度主要有两个原因:

    1.允许你水平拆分和缩放内容量

    2.允许你分布式操作存储在多个不同节点上的分片,从而提高性能

    一个分片如何分布以及es如何根据搜索来聚合数据是es自己定义的,对我们来说没多大关系。

    在网络环境中错误是任何情况都会发生的,因为节点或者分片的某些原因造成的突然掉线或者消失的故障转移机制是很有用的。为了终结这个情况,es允许你为自己的分片建立多个副本。

    副本的重要重读有下面两个原因:

    1.提供了节点和分片失败情况下的高可用的机制,因为这个,要注意到主分片的副本跟主分片不能存在于同一台机器上(也就是同一个节点)

    2.允许你扩展自己的搜索量、吞吐量,因为副本也能支持查询

    简而言之,每个索引都可以被划分为多个分片,一个索引也可以在某些情况下没有副本,

    索引被设置副本之后,将有自己的主分片和副本分片。

    分片和副本的数量在索引建立时设定,索引建立之后,可以用 _shrink 和 _splitapi来改变当前的分片,但是这不好操作,在开始创建索引的时候设定分片数量才是正确的操作。

    默认情况下每个索引是5个朱分片和1个副本

    这意味着如果你在自己的集群中有至少两个索引的话,

    你的索引将会5个主分片和5个副本分片(一个副本),

    每个索引中有10个分片

    注意

    每个es的分片都是一个lucene索引,每个lucene索引中有最大文档存储量,

    限制是:2,147,483,519 (= Integer.MAX_VALUE - 128) 个文档,

    你可以通过_cat/shards API监控分片的大小

  • 相关阅读:
    Goldbach's Conjecture
    查找素数
    最大公约数和最小公倍数
    迭代求立方根
    计算两个矩阵的乘积
    随机选择算法
    有几个PAT
    python3学习笔记之安装
    Ubuntu 16.04卸载一些不必要的预装软件
    Xshell连接不上虚拟机提示ssh服务器拒绝了密码,请再试一次
  • 原文地址:https://www.cnblogs.com/supermanwx/p/11821263.html
Copyright © 2011-2022 走看看