02_概念

  1. 功能分类

    ES具备下列2个功能:

    1. 搜索. 功能和Solr类似

    2. 分析, 结合 LogStash 使用(比如 大数据的海量数据的大数据分析)

      1. 但是现在更多的用kafka,他是流式计算. 计算后,即有分片结果,也有每个节点的结果
  2. 相关概念

    1. cluster

      集群.elasticsearch集群由一个或多个节点组成,其中有一个主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的.Elasticsearch的一个概念就是去中心化,字面上理解就是五中心节点,这是对于集群外部来说的,因为从外部看Elasticsearch集群,在逻辑上是一个整体,你与集群中的任何一个节点通讯和与整个es集群通讯是等价的.in other word,主节点的存在不会产生单点安全隐患(只要节点不是全宕机),并发访问瓶颈等问题.

      这个集群是有主,无中心,就是说么有谁是必须的

      只要半数以上的节点ok,整个集群就可以

      脑裂

    Index: 索引

    索引.相当于关系型数据库中的表,其中存储若干相似结构的Document的数据.如: 客户索引,订单索引,商品索引等.

    Elasticsearch中的索引不像数据库表格中的一样强制的数据结构约束,在理论上,可以存储任意数据结构的数据.但是为了更好的为业务提供搜索数据支撑,还是要设计合适的索引体系来存储不同的数据.

shards和replicas 统称为分片

shards

primary shard: 代表索引的主分片, Elasticsearch可以把一个完整的索引分成多个primary shard,这样的好处是可以把一个大的索引拆分成多个分片,分布存储在不同的es节点上,从而形成分布式存储,并为搜索访问提供分布式服务,提高并发处理能力

primary shard的数量只能在索引创建时指定,并且索引创建后不能在更改primary shard数量.

replicas

replicas shard: 代表索引主分片的副本(从分片),es可以设置多个replicas shard.replicashard的作用:

  • 一是提高系统的容错性,当某个节点某个primary shard 损坏或丢失时可以从副本中恢复
  • 二是提高es的查询效率,es会自动对搜索请求进行负载

主分片用来读和写,从分片是只读,自动备份

当主分片宕机的时候,从分片可以升级成主分片

当节点恢复之后,他会进行数据同步,重新设定主从的分配的映射关系以及散列关系.


知道了上面这些,下面我们看一个要过期不能用的概念

Type

类型. 每个索引中都必须有唯一的一个Type,Type 是Index中的一个逻辑分类.

es中的数据document是存储在索引下的Type中的.

type(抽象概念)

注意:es5.x以及更低版本中,一个Index中可以有多个Type.

es6.x版本之后,type概念被弱化,一个index中只能有一个唯一的type,且在7.x版本之后,删除type定义

Document

就像你在MongoDB里面的文档是一样的

文档,ES中的最小数据单元,一个Document就是一条数据,一般使用JSON数据结构表示.每个Index下的Type中都可以存储多个Document.

一个Document中可定义多个field,field就是数据字段.

如: 学生数据({"name":"张三","age":20,"gender":"男").

元数据

在es中,所有已_开头的属性都成为元数据,都有着自己特定的含义

例如: _index: 表示索引

倒排索引

对数据进行分析,抽取出数据中的词条,以词条作为key,对应数据的存储位置作为


results matching ""

    No results matching ""