ElasticSearch應用入門系列 1.4 Elasticsearch簡單交互

本系列目錄請看這裏 https://blog.csdn.net/Michel4Liu/article/details/81711892

本篇主要是感受一下es的操作,例子和大部分內容來源於官網,可以利用一些http提交工具。
1、curl linux的組件,可以用但是手寫東西太多比較麻煩些。
2、火狐瀏覽器的RESTClient插件,難度比curl小,可以點選很多東西。 本篇主要講此工具和es交互
3、谷歌瀏覽器的Sense插件(官方演示也用這個)目前 0.9.0版本(安裝鏈接),操作也非常簡單,但是不支持ES6.X版本了,主要是json提交數據時需要加Content-Type: application/json。
國內有人已經修改了此工具,https://blog.csdn.net/xieshanwu/article/details/78667881 想用sense的可以嘗試一下,我沒測試。

一、安裝RESTClient插件

打開網址安裝 https://addons.mozilla.org/zh-CN/firefox/addon/restclient/
這裏寫圖片描述

二、使用RESTClient 實操 es,例子來源於官網,我只是轉成了 RESTClient 操作而已

1、配置http頭字段,自定義一個頭字段Content-Type: application/json

這裏寫圖片描述

2、利用RESTClient 新增一條數據進入es
選擇PUT 表示新增,輸入url :http://ES主機地址:9200/megacorp/employee/1 ,設置頭字段,然後附帶json發送

{
"first_name" : "John",
"last_name" : "Smith",
"age" : 25,
"about" : "I love to go rock climbing",
"interests": [ "sports", "music" ]
}

這裏寫圖片描述
注意,路徑 /megacorp/employee/1 包含了三部分的信息:
megacorp: 索引名稱 (有文章說可以理解爲數據庫)
employee: 類型名稱 (有文章說可以理解爲表)
1: 特定僱員的ID (有文章說可以理解爲唯一標識)

上面就新建一個人員基本數據,我們可以以此放入更多的同類型數據。相同類型結構需要一致。示例數據填入更多數據 下面演示搜索。

3、

  • 按照唯一標識搜索
    這裏寫圖片描述
  • 搜索全部數據
    這裏寫圖片描述
  • 按條件搜索:檢索last_name=Smith
    這裏寫圖片描述
  • 使用表達式搜索,json傳搜索條件,工具get不會傳正文json的,但是curl支持get傳data。所以此處查詢改成post傳參。
    這裏寫圖片描述
  • 複雜的搜索:搜索last_name=Smith並且年齡大於 30的
    這裏寫圖片描述
    這部分是一個 range 過濾器 , 它能找到年齡大於 30 的文檔,其中 gt 表示_大於(_great than)
  • 全文搜索,之前的搜索都比較號理解類似於數據庫查詢,下面這個搜索是數據庫的短板。搜索引擎的特點相關性檢索。
    搜索下所有喜歡攀巖(rock climbing)
    這裏寫圖片描述
    第一個結果不難理解,包含關鍵字,第二個結果只是包含部分關鍵字,檢索的相關性分數也低於第一個結果。

更詳細解釋或更復雜查詢請查看官方文檔
https://www.elastic.co/guide/cn/elasticsearch/guide/current/_indexing_employee_documents.html

三、工具最下面會轉義和操作相等的curl操作指令可以直接複製到linux中操作,非常有助於學習curl。

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章