**1. 單機與集群**
單臺 Elasticsearch 服務器提供服務,往往都有最大的負載能力,超過這個閾值,服務器性能就會大大降低甚至不可用,所以生產環境中,一般都是運行在指定服務器集群中。
除了負載能力,單點服務器也存在其他問題:
* 單臺機器存儲容量有限
* 單服務器容易出現單點故障,無法實現高可用
* 單服務的并發處理能力有限
配置服務器集群時,集群中節點數量沒有限制,大于等于 2 個節點就可以看做是集群了。一般出于高性能及高可用方面來考慮集群中節點數量都是 3 個以上。
<br/>
**2. 集群 Cluster**
一個集群就是由一個或多個服務器節點組織在一起,共同持有整個的數據,并一起提供索引和搜索功能。一個 Elasticsearch 集群有一個唯一的名字標識,這個名字默認就是elasticsearch。這個名字是重要的,因為一個節點只能通過指定某個集群的名字,來加入這個集群。
<br/>
**3. 節點 Node**
集群中包含很多服務器,一個節點就是其中的一個服務器。作為集群的一部分,它存儲數據,參與集群的索引和搜索功能。
<br/>
一個節點也是由一個名字來標識的,默認情況下,這個名字是一個隨機的漫威漫畫角色的名字,這個名字會在啟動的時候賦予節點。這個名字對于管理工作來說挺重要的,因為在這個管理過程中,你會去確定網絡中的哪些服務器對應于 Elasticsearch 集群中的哪些節點。
<br/>
一個節點可以通過配置集群名稱的方式來加入一個指定的集群。默認情況下,每個節點都會被安排加入到一個叫做elasticsearch的集群中,這意味著,如果你在你的網絡中啟動了若干個節點,并假定它們能夠相互發現彼此,它們將會自動地形成并加入到一個叫做elasticsearch的集群中。
<br/>
在一個集群里,只要你想,可以擁有任意多個節點。而且,如果當前你的網絡中沒有運行任何 Elasticsearch 節點,這時啟動一個節點,會默認創建并加入一個叫做elasticsearch的集群。
- Elasticsearch是什么
- 全文搜索引擎
- Elasticsearch與Solr
- 數據結構
- 安裝Elasticsearch
- Linux單機安裝
- Windows單機安裝
- 安裝Kibana
- Linux安裝
- Windows安裝
- es基本語句
- 索引操作
- 文檔操作
- 映射操作
- 高級查詢
- es-JavaAPI
- maven依賴
- 索引操作
- 文檔操作
- 高級查詢
- es集群搭建
- Linux集群搭建
- Windows集群搭建
- 核心概念
- 索引(Index)
- 類型(Type)
- 文檔(Document)
- 字段(Field)
- 映射(Mapping)
- 分片(Shards)
- 副本(Replicas)
- 分配(Allocation)
- 系統架構
- 分布式集群
- 單節點集群
- 故障轉移
- 水平擴容
- 應對故障
- 路由計算
- 分片控制
- 寫流程
- 讀流程
- 更新流程
- 多文檔操作流程
- 分片原理
- 倒排索引
- 文檔搜索
- 動態更新索引
- 近實時搜索
- 持久化變更
- 段合并
- 文檔分析
- 內置分析器
- 分析器使用場景
- 測試分析器
- 指定分析器
- 自定義分析器
- 文檔處理
- 文檔沖突
- 樂觀并發控制
- 外部系統版本控制
- es優化
- 硬件選擇
- 分片策略
- 合理設置分片數
- 推遲分片分配
- 路由選擇
- 寫入速度優化
- 批量數據提交
- 優化存儲設備
- 合理使用合并
- 減少Refresh的次數
- 加大Flush設置
- 減少副本的數量
- 內存設置
- 重要配置
- es常見問題
- 為什么要使用Elasticsearch
- master選舉流程
- 集群腦裂問題
- 索引文檔流程
- 更新和刪除文檔流程
- 搜索流程
- ES部署在Linux時的優化方法
- GC方面ES需要注意的點
- ES對大數據量的聚合實現
- 并發時保證讀寫一致性
- 字典樹
- ES的倒排索引
- Spring Data Elasticsearch
- 環境搭建
- 索引操作
- 文檔操作