elasticsearch中的API
es中的API按照大類分為下面幾種:
- 文檔API: 提供對文檔的增刪改查操作
- 搜索API: 提供對文檔進行某個字段的查詢
- 索引API: 提供對索引進行操作
- 查看API: 按照更直觀的形式返回數據,更適用於控制台請求展示
- 集群API: 對集群進行查看和操作的API
文檔API
- Index API: 創建並建立索引
- Get API: 獲取文檔
- DELETE API: 刪除文檔
- UPDATE API: 更新文檔
- Multi Get API: 一次批量獲取文檔
- Bulk API: 批量操作,批量操作中可以執行增刪改查
- DELETE By Query API: 根據查詢刪除
- Term Vectors: 詞組分析,只能針對一個文檔
- Multi termvectors API: 多個文檔的詞組分析
multiGet的時候內部的行為是將一個請求分為多個,到不同的node中進行請求,再將結果合並起來。
如果某個node的請求查詢失敗了,那么這個請求仍然會返回數據,只是返回的數據只有請求成功的節點的查詢數據集合。
詞組分析的功能能查出比如某個文檔中的某個字段被索引分詞的情況。
對應的接口說明和例子
搜索API
- 基本搜索接口: 搜索的條件在url中
- DSL搜索接口: 搜索的條件在請求的body中
- 搜索模版設置接口: 可以設置搜索的模版,模版的功能是可以根據不同的傳入參數,進行不同的實際搜索
- 搜索分片查詢接口: 查詢這個搜索會使用到哪個索引和分片
- Suggest接口: 搜索建議接口,輸入一個詞,根據某個字段,返回搜索建議。
- 批量搜索接口: 把批量請求放在一個文件中,批量搜索接口讀取這個文件,進行搜索查詢
- Count接口: 只返回符合搜索的文檔個數
- 文檔存在接口: 判斷是否有符合搜索的文檔存在
- 驗證接口: 判斷某個搜索請求是否合法,不合法返回錯誤信息
- 解釋接口: 使用這個接口能返回某個文檔是否符合某個查詢,為什么符合等信息
- 抽出器接口: 簡單來說,可以用這個接口指定某個文檔符合某個搜索,事先未文檔建立對應搜索
對應的接口說明和例子
索引API
- 創建索引接口(POST my_index)
- 刪除索引接口(DELETE my_index)
- 獲取索引信息接口(GET my_index)
- 索引是否存在接口(HEAD my_index)
- 打開/關閉索引接口(my_index/_close, my_index/_open)
- 設置索引映射接口(PUT my_index/_mapping)
- 獲取索引映射接口(GET my_index/_mapping)
- 獲取字段映射接口(GET my_index/_mapping/field/my_field)
- 類型是否存在接口(HEAD my_index/my_type)
- 刪除映射接口(DELTE my_index/_mapping/my_type)
- 索引別名接口(_aliases)
- 更新索引設置接口(PUT my_index/_settings)
- 獲取索引設置接口(GET my_index/_settings)
- 分析接口(_analyze): 分析某個字段是如何建立索引的
- 建立索引模版接口(_template): 為索引建立模版,以后新創建的索引都可以按照這個模版進行初始化
- 預熱接口(_warmer): 某些查詢可以事先預熱,這樣預熱后的數據存放在內存中,增加后續查詢效率
- 狀態接口(_status): 索引狀態
- 批量索引狀態接口(_stats): 批量查詢索引狀態
- 分片信息接口(_segments): 提供分片信息級別的信息
- 索引恢復接口(_recovery): 進行索引恢復操作
- 清除緩存接口(_cache/clear): 清除所有的緩存
- 輸出接口(_flush)
- 刷新接口(_refresh)
- 優化接口(_optimize): 對索引進行優化
- 升級接口(_upgrade): 這里的升級指的是把索引升級到lucence的最新格式
對應的接口說明和例子
查看API
- 查看別名接口(_cat/aliases): 查看索引別名
- 查看分配資源接口(_cat/allocation)
- 查看文檔個數接口(_cat/count)
- 查看字段分配情況接口(_cat/fielddata)
- 查看健康狀態接口(_cat/health)
- 查看索引信息接口(_cat/indices)
- 查看master信息接口(_cat/master)
- 查看nodes信息接口(_cat/nodes)
- 查看正在掛起的任務接口(_cat/pending_tasks)
- 查看插件接口(_cat/plugins)
- 查看修復狀態接口(_cat/recovery)
- 查看線城池接口(_cat/thread_pool)
- 查看分片信息接口(_cat/shards)
- 查看lucence的段信息接口(_cat/segments)
對應的接口說明和例子
集群API
- 查看集群健康狀態接口(_cluster/health)
- 查看集群狀況接口(_cluster/state)
- 查看集群統計信息接口(_cluster/stats)
- 查看集群掛起的任務接口(_cluster/pending_tasks)
- 集群重新路由操作(_cluster/reroute)
- 更新集群設置(_cluster/settings)
- 節點狀態(_nodes/stats)
- 節點信息(_nodes)
- 節點的熱線程(_nodes/hot_threads)
- 關閉節點(\nodes/_master/_shutdown)
對應的接口說明和例子