ElasticSearch學(xué)習(xí)--掌握文檔的增刪改查操作
本篇經(jīng)驗(yàn)分享一下如何在ElasticSearch中進(jìn)行文檔的增刪改查操作。注意經(jīng)驗(yàn)中涉及的所有操作均是在 Kibana 的 DevTool 開發(fā)工具中進(jìn)行的。 新增文檔--手動指定文檔ID在Elast
本篇經(jīng)驗(yàn)分享一下如何在ElasticSearch中進(jìn)行文檔的增刪改查操作。注意經(jīng)驗(yàn)中涉及的所有操作均是在 Kibana 的 DevTool 開發(fā)工具中進(jìn)行的。
新增文檔--手動指定文檔ID
在ElasticSearch中,向索引中新增文檔有兩種主要方式,均使用 PUT 方法,并且需要手動指定文檔ID。第一種方式是使用Create文檔命令:`PUT 索引名稱/_create/文檔ID {文檔內(nèi)容}`;第二種方式是使用Index文檔命令:`PUT 索引名稱/_doc/文檔ID {文檔內(nèi)容}`。兩者的區(qū)別在于,使用“Create文檔”時(shí),如果文檔ID已存在,則新增失敗;而使用“Index文檔”時(shí),如果文檔ID已存在,會先刪除原始文檔,再新增新文檔,并且文檔元數(shù)據(jù)中的_version屬性值會自動加1。
通過圖示可以看到,在索引myindex中通過“Create文檔”的方式新增文檔,再次嘗試插入相同ID的文檔會失??;而通過“Index文檔”的方式新增文檔,再次運(yùn)行相同命令時(shí)插入成功,同時(shí)文檔的_version增加了1。
新增文檔--系統(tǒng)自動生成文檔ID
除了手動指定文檔ID,也可以讓系統(tǒng)自動生成文檔ID,命令格式為:`POST 索引名稱/_doc {文檔內(nèi)容}`。雖然系統(tǒng)生成的文檔ID可讀性較差,但在某些情況下會更方便。
查詢文檔
要查詢文檔,命令格式為:`GET 索引名稱/_doc/文檔ID`。通過這個(gè)命令可以輕松地獲取指定文檔的內(nèi)容。
修改文檔
修改文檔的命令格式為:`POST 索引名稱/_update/文檔ID {"doc": {修改的內(nèi)容}}`??梢酝ㄟ^這個(gè)命令對文檔進(jìn)行更新操作,如圖示所示,可以看到文檔的原始內(nèi)容、修改后的內(nèi)容以及更新后的文檔內(nèi)容。
刪除文檔
最后,刪除文檔的命令格式為:`DELETE 索引名稱/_doc/文檔ID`。通過這個(gè)命令可以將指定文檔從索引中刪除,如圖示所示,刪除文檔后再次查詢已無法獲取到該文檔。
以上就是關(guān)于在ElasticSearch中進(jìn)行文檔的增刪改查操作的詳細(xì)介紹,希望對您有所幫助。如果想進(jìn)一步學(xué)習(xí)ElasticSearch的知識,可以深入研究其更多功能和用法。