美文网首页
1.Elasticsearch基本概念

1.Elasticsearch基本概念

作者: DrinkwaterGor | 来源:发表于2020-02-18 11:58 被阅读0次

    相关概念讲解

    1.Cluster和node:

    Cluster是对外提供搜索服务的集群, 组成这个Cluster的各个节点叫做Node, 每个Node就是Elasticsearch运行的实例, 集群Cluster是一组有这同样Cluster.name的节点, 各个node之间协同工作, 互相分享数据, 提供故障转移和拓展功能.
    Node分为IndexNode(读写), DataNode(数据存储与访问, 负载均衡)等.节点之间是对等关系的(去中心化), 而弱化的Master节点只不过多了维护集群状态的功能, 每个节点之间的集群状态数据是实时同步的.如果Master节点出故障,按照预定的程序,另一台Node机器会被选举为新Master.

    2.Shards:

    Elasticsearch将一个完整的索引分为若干部分, 每个部分就是一个Shards, 每个Shards实际上就是一个基于Lucene的索引. Shards存储在相同或不同的Node上;Shards的数量一般在索引创建前指定, 且索引创建后不能更改(其初始配置而是可以修改的). 检索时, Elasticsearch会将查询发送到不同的Shards上并将返回结果合并, 该过程对用户透明.

    3.Replicas:

    Replicas是索引的冗余备份, 可用于防止数据丢失或用来做负载均衡.一般地, Elasticsearch会自动对搜索请求进行负载均衡.

    4.Recovery:

    在有节点加入或退出集群Cluster或故障节点重新启动, Elasticsearch会根据机器的负载情况, 对索引分片Shards进行重新分配.

    5.River:

    River是一个运行在Elasticsearch集群内部的插件, 主要用来从外部获取异构数据, 然后在Elasticsearch中创建索引.
    常见的RabbitMQ river Plugin,MongoDB river Plugin, JDBC river Plugin等

    6.Gateway:

    是Elasticsearch索引数据快照的存储方式, 当Elasticsearch集群关闭再重新启动时, 就会从Gateway中读取索引数据快照.Elasticsearch支持多种类型的Gateway, 有本地文件系统(像普通的Lucene索引一样, 也是默认默认方式), 分布式文件系统(如freeds), Hadoop的HDFS和Amazon的S3云存储服务等.
    Gateway与workDir的区别;Gateway存储完整的索引数据, workDir对外提供查询操作, Gateway可以是本地文件系统, 共享文件系统或者HDFS等云存储, workDir可以是内存, 本地文件系统或两者结合;

    7.Discovery.zen:

    代表Elasticsearch的自动发现节点机制.Zen用来做节点自动发现和Master节点选举,当Master故障后,其他节点自动选举产生新的Master(节点发现和Master选举机制支持)

    8.Transport:

    Transport代表Elasticsearch内部节点或集群与客户端的交互方式, 默认内部使用TCP协议交互, 同事支持Http json格式, 等传输协议(可通过插件方式集成新协议支持)

    9.Index, Type, Document, Field:

    Index是Elasticsearch存储数据的地方, 可以高速有效地对索引中的数据进行全文索引, 类似于关系数据库系统中的数据库;
    在Index下, 一般会有多个存放数据的Type, Type类似于数据库中的数据表Table, 用来存放具体数据;
    Document相当于关系数据库中的一行数据, 在一个Type中的每个Document都有一个唯一ID做区分. Document不需要固定结构, 可以有不同的字段集合
    Field就相当于关系数据库中的某一列, 是Elasticsearch数据存储的最小单位.

    注意: 在6.0.0或者更高版本中仅支持单Mapping。对于5.X版本中多个Mapping依旧可以使用。计划在7.0.0中完全移除Mapping.
    https://www.elastic.co/guide/en/elasticsearch/reference/current/removal-of-types.html

    关系型数据库 Elasticsearch
    数据库Database 索引Index, 支持全文检索
    表Table 类型Type
    数据行Row 文档Document, 但不需要固定结构, 不同文档可以不同字段
    数据列Column 字段Field
    模式Schema 映像Mapping

    10.Mapping:

    映像, Mapping定义索引下Type的字段处理规则, 如索引如何建立, 索引的数据类型, 是否保存原始索引JSON文档, 是都压缩原始JSON文档, 是都需要分词处理, 如何分词处理等

    相关文章

      网友评论

          本文标题:1.Elasticsearch基本概念

          本文链接:https://www.haomeiwen.com/subject/gffifhtx.html