文件通過index
api被索引——使資料可以被儲存和搜尋。但是首先我們需要決定文件所在。正如我們討論的,文件通過其_index
、_type
、_id
唯一確定。們可以自己提供乙個_id
,或者也使用index
api 為我們生成乙個。
如果你的文件有自然的識別符號(例如user_account
字段或者其他值表示文件),你就可以提供自己的_id
,使用這種形式的index
api:
put ///
例如我們的索引叫做「website」
,型別叫做「blog」
,我們選擇的id是「123」
,那麼這個索引請求就像這樣:
put /website/blog/123
elasticsearch的響應:
響應指出請求的索引已經被成功建立,這個索引中包含_index
、_type
和_id
元資料,以及乙個新元素:_version
。
elasticsearch中每個文件都有版本號,每當文件變化(包括刪除)都會使_version
增加。在《版本控制》章節中我們將**如何使用_version
號確保你程式的一部分不會覆蓋掉另一部分所做的更改。
如果我們的資料沒有自然id,我們可以讓elasticsearch自動為我們生成。請求結構發生了變化:put
方法——「在這個url中儲存文件」
變成了post
方法——"在這個型別下儲存文件"
。(譯者注:原來是把文件儲存到某個id對應的空間,現在是把這個文件新增到某個_type
下)。
url現在只包含_index
和_type
兩個字段:
post /website/blog/
響應內容與剛才類似,只有_id
字段變成了自動生成的值:
自動生成的id有22個字元長,url-safe, base64-encoded string universally unique identifiers, 或者叫 uuids。 ElasticSearch 檢索文件
現在elasticsearch中已經儲存了一些資料,我們可以根據業務需求開始工作了。第乙個需求是能夠檢索單個員工的資訊。這對於elasticsearch來說非常簡單。我們只要執行http get請求並指出文件的 位址 索引 型別和id既可。根據這三部分資訊,我們就可以返回原始json文件 檢索命令如...
Elasticsearch 文件操作
1.elasticserach api 操作 elasticsearch rest api遵循的格式為 curl x 檢查es版本資訊 http ip 9200 檢視集群是否健康 http ip 9200 cat health?v 檢視節點列表 http ip 9200 cat nodes?v 列出...
ElasticSearch 文件儲存
確定shard的公式 shard hash routing number of primary shardsrouting 預設是文件的 id 也可以設定成乙個自定義的值。因此要在建立索引的時候就確定好主分片的數量,並且永遠不會改變這個數量,因為如果數量變化了,那麼所有之前路由的值都會無效。每個節點...