mget 和 bulk API 的模式類似于單文檔模式。區別在于協調節點知道每個文檔存在于哪個分片中。它將整個多文檔請求分解成 每個分片 的多文檔請求,并且將這些請求并行轉發到每個參與節點。
<br/>
協調節點一旦收到來自每個節點的應答,就將每個節點的響應收集整理成單個響應,返回給客戶端。
:-: 
mget請求步驟
用單個 mget 請求取回多個文檔所需的步驟順序:
1)客戶端向 Node 1 發送 mget 請求。
2)Node 1 為每個分片構建多文檔獲取請求,然后并行轉發這些請求到托管在每個所需的主分片或者副本分片的節點上。一旦收到所有答復, Node 1 構建響應并將其返回給客戶端。
<br/>
bulk API, 允許在單個批量請求中執行多個創建、索引、刪除和更新請求。
:-: 
bulk請求步驟
bulk API 按如下步驟順序執行:
1)客戶端向 Node 1 發送 bulk 請求。
2)Node 1 為每個節點創建一個批量請求,并將這些請求并行轉發到每個包含主分片的節點主機。
3)主分片一個接一個按順序執行每個操作。當每個操作成功時,主分片并行轉發新文檔(或刪除)到副本分片,然后執行下一個操作。 一旦所有的副本分片報告所有操作成功,該節點將向協調節點報告成功,協調節點將這些響應收集整理并返回給客戶端。
- 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
- 環境搭建
- 索引操作
- 文檔操作