(二)Elasticsearch入门之基本概念

  • A+
所属分类:Java Linux 数据库

(二)Elasticsearch入门之基本概念

集群(Cluster)

  •     整个ES默认就是集群状态,整个集群是一份完整、互备的数据;

  •     ES的集群是自动阻止的,只要指定同一个集群名即可。

节点(Node)

  •    Node 是组成集群的一个单独的服务器,用于存储数据并提供集群的搜索和索引功能;

  •    默认情况下节点会自动加入同一个集群(集群名一样,且各节点能互相发现);

  •    节点启用时会默认生成uuid作为节点名,该名字对于集群管理相当重要。

索引(Index)

  • ES中的索引类似于关系型数据库的Database,逻辑上它是一个数据库,物理上它是分片(share)存放的。 

  • 单个集群可以创建任意数量的索引;

  • 索引是具有某些共同特征数据的集合,例如客户索引、产品索引;

  • 索引由一个全小写的名称标识,对数据的添加、删除、更新、搜索等操作,均需指定索引名称。

分片和副本(Share And Replicas)

    分片,ES允许可以存储超过单节点磁盘容量的数据,为此将数据分片存放,该分片操作对用户完全透明。

  • ES通过Hash算法分片,分片数量可以任意指定,默认分成5片;

  • 每个分片都是一个功能齐全且独立的“index”,且可以被托管到集群中的任意节点上

  • 提供了容量水平扩展的能力;

  • 多个分片云允许分布式并发操作,可以大大提高性能;

    副本,为应对故障,提高可靠性,ES允许为分片生成一个或多个副本。

  • 服务高可用:分片异常时,可以通过副本继续提供服务。因此分片副本不会与主分片分配到同一个节点;

  • 扩展性能:由于查询操作可以在分片副本上执行,因此可以提升系统的查询吞吐量;

类型(Type)

类似于关系型数据库中的table,或者说更像面向对象中的calss,同一Json格式的数据集合。用于定义文档属性,包括类型、分词器


其实将Index类比为Database,type类比为table其实是不恰当的,目前新版的ES中type概念已经被弃用了,每个Index只能定义一个 Mapping Type。


文档(Document)

对应这数据库表中的行,Index里面的单条记录成为Document,多条Document构成了Index

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: