美文网首页
Elasticsearch-概念说明

Elasticsearch-概念说明

作者: ssttIsme | 来源:发表于2021-07-18 16:22 被阅读0次

    索引(Index)

    一个索引就是一个拥有几分相似特征的文档的集合。比如说,你可以有一个客户数据的索引,另一个产品目录的索引,还有一个订单数据的索引。一个索引由一个名字来标识(必须全部是小写字母),并且当我们要对这个索引中的文档进行索引、搜索、更新和删除时,都要用到这个名字。一个集群中,可以定义任意多的索引。
    能搜索到的数据必须索引,这样的好处是可以提高搜索速度,比如:新华字典前面的目录就是索引的意思,目录可以提高查询速度。

    类型(Type)

    一个索引中,可以定义一种或多种类型。
    一个类型是你的索引的一个逻辑意义上的分类/分区,其语义完全由你来定。通常,会为具有一组共同字段的文档定义一个类型。不同的版本,类型发生了不同的变化。

    版本 Type
    5.x 支持多种type
    6.x 只能有一种type
    7.x 默认不再支持自定义索引类型(默认类型为:_doc)

    文档(Document)

    一个文档是一个可被索引的基础信息单元,也就是一条数据。
    比如:你可以拥有某一个客户的文档,某一个产品的一个文档,当然,也可以拥有某个订单的一个文档。文档以JSON(Javascript Object Notation)格式来表示,而JSON是一个到处存在的互联网数据交互格式。
    在一个index/type里面,你可以存储任意多的文档。

    字段(Field)

    相当于是数据表的字段,对文档数据根据不同的属性类型进行分组。

    映射(Mapping)

    mapping是处理数据的方式和规则方面做一些限制,如:某个字段的数据类型、默认值、分析器、是否被索引等等。这些都是映射里面可以设置的,其他就是处理ES里面数据的一些使用规则设置也叫做映射,按着最优规则处理数据对性能提高很大,因此才需要建立映射,并且需要思考如何建立映射才能对性能更好。

    分片(Shards)

    一个索引可以存储超出单个节点硬件限制的大量数据。比如,一个具有10亿文档数据的索引占据1TB的硬盘空间,而任一个节点都可能没有有这样大的磁盘空间。或者单个节点处理搜索请求,响应太慢。为了解决这个问题,ELasticSearch提供了将索引划分成多个分片的能力,每一份就称之为分片。当你创建一个索引的时候,你可以指定你想要的分片的数量。每个分片本身也是一个功能完善并且独立的"索引",这个“索引”可以被放置到集群中的任何节点上。
    分片很重要,主要有两方面的原因:
    1)允许你水平分割/扩展你的内容容量。
    2)允许你在分片上进行分布式的、并行的操作,进而提高性能/吞吐量。

    相关文章

      网友评论

          本文标题:Elasticsearch-概念说明

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