宝石流云 Elasticsearch全攻略
时下不论是在全文搜索领域还是大数据即时处理领域ELK都一枝独秀 , 而ELK的核心在于Elasticsearch , ELK很秀源于Elasticsearch很棒 。 很多可能用过ELK但是对其核心Elasticsearch却知之甚少 , 本文我们就一起来学习Elasticsearch , 从基本概念到生产使用一文全搞定 。
基础概念对于一个Elasticsearch(ES)的新手 , 首先需要学习一些基本概念 。
节点(Node)是ES的实例 。 它们可以是单个服务器 , 也可以仅仅为服务器上运行的ES进程 。 注意:服务器并等价于节点不相同 。 VM虚拟机或物理服务器都可以容纳许多ES进程 , 每个ES进程都是一个节点 。 节点可以完全加入一个集群 。 有不同类型的节点 。 其中最有重要两个节点是数据节点(DataNode)和备选主节点(Master-EligibleNode) 。 一个节点可以同时具备多种属性 。 数据节点运行所有数据操作 。 即存储 , 索引和搜索数据 。 备选主节点用来投票为运行集群和索引管理的主机 。
索引(Index)是数据的高级抽象 。 索引本身不保存数据 。 它们只是对实际存储数据的另一种抽象 。 对数据执行的任何操作(例如插入 , 删除 , 建立索引和搜索)都会对索引产生影响 。 索引可以完全属于一个簇 , 并且由分片组成 。
分片(Shard)是ApacheLucene的实例 。 一个分片可以容纳许多文档 。 分片是实际数据存储 , 索引和搜索的对象 。 一个分片恰好属于一个节点和索引 。 分片分两种类型:主(primary)分片和副本(replica) 。 两者基本上是等同的 , 它们拥有相同的数据 , 并且并行搜索所有分片 。 在拥有相同数据的所有分片中 , 一个是主分片 , 是唯一可以接受索引请求的分片 。 如果主分片所在的节点死亡 , 则副本分片将自动接管成为主分片 。 然后 , ES将创建一个新的副本分片并复制数据 。 总体上可以用一个简单的图示如下:
node.master:true
在群集启动时或主节点退出群集时 , 所有符合主节点条件的节点都会开始选举新的主节点 。 因此 , 需要具有2n+1个符合主机要求的节点 。 否则 , 可能会出现选举55开的裂脑情况 。
节点加入当ES流程启动时 , 它就独立自由存在 , 他如何知道自己所处的集群呢?有不同的方法可以完成此操作 。 但常用一种叫做种子主机(SeedHosts)的方法来这个过程 。
Elasticsearch节点会不断地和他所见过的所有其他节点进行对话 。 因此 , 一个节点最初只需资询几个其他节点即可了解整个集群 。 整个过程不是一个恒定的过程:节点不属于集群时 , 它们仅共享有关他们发现的其他节点的信息 。 一旦加入群集 , 节点便会停止该操作 , 并依靠当选群集主节点共享所发生的变化信息 。 这样可以节省了大量不必要的网络闲聊 。 在ES7.x中 , 节点间只交流他们所见到到备选主机节点 , 发现过程会忽略备选主机节点 。
推荐阅读
- 娱乐大起底|我的世界:为什么绿宝石矿最稀有,绿宝石却不是?
- 不一样的角度|叶罗丽:辛灵有宝石盒子,曼多拉也有一个造型奇怪的宝石箱子
- 5G手机安相宇评测:红米10X 5G 上手,感受实力担当且颜值出众的宝石机
- 游戏兵长雾夏菌|航海王燃烧意志:锦卫门装备、宝石、附魂选择,BOSS杀手
- 版本|宝可梦里很有意思的几个版本,今天我们来看看这款绿宝石的改版吧!
- 娱乐中的趣闻|一个细节暴露周年活动具体时间,部落冲突:“送宝石”礼包又来了
- 非洲|非洲男子挖到2块宝石,卖了2370万元,称要建学校帮更多孩子上学
- |“要命”!女子常年吃素,备孕体检时大惊:体内长出百颗“黑宝石”
- |备孕体检时大惊:体内长出百颗“黑宝石”,“要命”!女子常年吃素
- 宝石流云|世界上最短航班仅用了47秒,中国最短航班用时多少,是在哪里?
