Elasticsearch快速入门并潜入了解

ES与传统的关系型数据库比较:

在此说明,ES版本的变化都会做一定的调整,其他博客推从解释说关系型数据库的Tables类似于ES的type,这个理解是错误的,官网也有说名(https://www.elastic.co/guide/en/elasticsearch/reference/6.2/removal-of-types.html)在SQL数据库中,表彼此独立。一个表中的列与另一个表中具有相同名称的列无关。映射类型中的字段不是这种情况。详细建下方type的详解或者参考官网文档。


ES的简单组成:

索引(Index)

ES将数据存储于一个或多个索引的分片中;Elasticsearch默认每个索引5个分片,每个分片1个副本。简单的理解就是,ElasticSearch索引和传统的关系型数据库相比,索引相当于数据库,在所有的CRUD操作都需要指定索引。

(注:索引名称必须是小写的,不能用下划线开头,不能包含逗)

文档类型(Type)

文档类型在Index内相当于一个个的逻辑分区,(旧版本:一个索引内部可定义一个或多个类型(type),6.x版本后推从一个index对应一个type;官网有说明,将来要取消type)。请参考官网文档

https://www.elastic.co/guide/en/elasticsearch/reference/6.2/removal-of-types.html

(注:type名称可以是大写或者小写,但是同时不能用下划线开头,不能包含逗号)

Index与Type

我们知道一个index下可以创建多个Type,但是关于index和Type的取舍随着版本的升级需要我们了解一下。

当然index由多个分片组成,但是每个分片都是要消耗一些磁盘、内存资源。上面描述过了,Elasticsearch 默认每个索引5个分片,每个分片1个副本。所以一个索引最少有10个分片了,副本的优势在于查询的时候可以加速,但是索引文档时候性能不是很快。还有如果有太多分片查询的结果需要合并,或者你发起了一个结果巨大的搜索请求,合并任务会需要大量 CPU 和内存资源。(这样我们在设置分片得多方面考虑了,当然我们可以简单得预算一下,分片数最少要等于集群的节点数,这样保证每个节点有一个分片,ES处理时候能把数据分散到各个节点,还有考虑到后期的扩展,初期设置分片数时候建议是节点数的1.5~3倍)

type的使用可以减少Index的数量。但是有些限制:

1、一个index下的不同type里有两个名字相同的字段,他们的类型(text, long、boolean 等等)和配置也必须相同。

2、如果某个type里存在name这个字段,但是在其他的type中不存在,这样也是会消耗一部分资源的,这是ES的限制性规定,避免文档稀疏,稀疏的文档压率不高。一个Index索引中多个type的mapping类似的时候推荐使用多type。滥用type可能会造成比使用多个index消耗的资源更多,所以官网再慢慢的取消type,6.x版本开始索引index对类型type都是一对一的了。

节点(Node)

一个运行中的Elasticsearch实例称为一个节点,而集群是由一个或者多个拥有相同cluster.name配置的节点组成,它们共同承担数据和负载的压力。

ES集群3-5个节点属于轻量级集群,要保证主节点个数满足((节点数/2)+1)。

节点作用:

共享数据并提供故障转移和扩展功能,当有新的节点加入或者删除节点,集群就会感知到并平衡数据。集群中一个节点会被选举为主节点(master),它用来管理集群中的一些变更

ES集群中节点类型:

1.主节点:负责管理集群范围内的所有变更,例如增删等操作。 主节点并不需要涉及到文档级别的变更和搜索等操作。可以通过属性node.master进行设置。

2.数据节点:存储数据和其对应的倒排索引。默认每一个节点都是数据节点(包括主节点),可以通过node.data属性进行设置。

3.协调节点:如果node.master和node.data属性均为false,则此节点称为协调节点,用来响应客户请求,均衡每个节点的负载。上述节点都是可以通过config目录下的.yml配置文件进行配置。

分片(Shard)和副本(Replica)

一个索引中的数据保存在多个分片中,一个分片便是一个Lucene 的实例;ES实际上就是利用分片来实现分布式。我们保存的文档数据就是保存在分片内。分片又被分配到集群内的各个节点里。分片会在各个节点上自由迁移分配,这样保证了数据分布均匀以使集群保持平衡。

(注:主分片的数量只能在创建索引时定义且不能修改)

副本分片就是主分片的一个副本,主要用于冗余数据和提高查询性能。副本分片的主要目的就是为了故障转移,如果持有主分片的节点挂掉了,一个副本分片就会晋升为主分片的角色。如果集群中的某个主分片丢失了,可以通过这个分片的副本将数据全部找回。因为副本分片不会和原分片放在同一节点上。

主分片与副本的交互:

新建、索引和删除请求都是写(write)操作,它们必须在主分片上成功完成才能复制到相关的副本分片上。(步骤如下:)

(1. 客户端选择一个node发送请求过去,这个node就是coordinating node(协调节点)

(2. coordinating node,对document进行路由,将请求转发给对应的node(有primary shard [主分片])

(3. 实际的node上的primary shard处理请求,然后将数据同步到replica node (副节点)

(4. coordinating node,如果发现primary node和所有replica node都成功之后,就返回响应结果给客户端

(详细见下图)


对ES的简单了解就到这了,详细的说明后期再更新。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 201,681评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,710评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,623评论 0 334
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,202评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,232评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,368评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,795评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,461评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,647评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,476评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,525评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,226评论 3 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,785评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,857评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,090评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,647评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,215评论 2 341

推荐阅读更多精彩内容