全部產品
Search
文件中心

Elasticsearch:使用Kibana外掛程式進行資料查詢或打標

更新時間:May 19, 2026

阿里雲Kibana在開源社區外掛程式的基礎上,提供了BSearch-QueryBuilder(進階查詢)和bsearch_label(資料打標)兩個預置外掛程式。本文介紹安裝和卸載Kibana預置外掛程式的方法。

安裝外掛程式

使用須知

  • Kibana外掛程式僅支援Elasticsearch 6.3和6.7版本。

  • 安裝外掛程式前,請確保Kibana節點的規格為2核4 GB及以上。如果不滿足,請升級Kibana節點,具體操作請參見升配叢集

  • 不支援安裝自訂的Kibana外掛程式。

操作步驟

  1. 登入Elasticsearch控制台

  2. 在左側導覽列,單擊Elasticsearch執行個體

  3. 在頂部功能表列處,選擇資源群組和地區。

  4. Elasticsearch執行個體中單擊目標執行個體ID。

  5. 單擊左側導覽列的可視化控制

  6. Kibana地區中,單擊修改配置

  7. 外掛程式配置地區,單擊對應外掛程式右側操作列下的安裝

    重要

    安裝外掛程式會觸發Kibana節點重啟,重啟過程中Kibana不能正常提供服務,請在業務低峰期操作。

  8. 安裝提示對話方塊中,單擊確認

    重啟成功後即完成外掛程式安裝,外掛程式狀態顯示為已安裝

使用BSearch-QueryBuilder外掛程式查詢資料

BSearch-QueryBuilder又稱進階查詢,是一個純前端的工具外掛程式。通過BSearch-QueryBuilder外掛程式,您無需編寫複雜的DSL語句,即可以可視化的方式完成複雜的查詢請求。本文介紹如何使用BSearch-QueryBuilder外掛程式查詢資料。

背景資訊

Query DSL是一個Java開源架構,用於構建安全類型的SQL查詢語句,能夠使用API代替傳統的拼接字串來構造查詢語句。目前Query DSL支援的平台包括JPA、JDO、SQL、Java Collections、RDF、Lucene以及Hibernate Search。

Elasticsearch提供了一整套基於JSON的DSL查詢語言來定義查詢。Query DSL是由一系列抽象的查詢運算式組成,特定查詢能夠包含其它的查詢(如bool),部分查詢能夠包含過濾器(如constant_score),還有的可以同時包含查詢和過濾器(如 filtered)。您可以從Elasticsearch支援的查詢集合裡面選擇任意一個查詢運算式,或者從過濾器集合裡面選擇任意一個過濾器進行組合,構造出複雜的查詢。但編寫DSL容易出錯,僅有少數專業程式人員精通,QueryBuilder能夠協助對Elasticsearch DSL不甚瞭解或者想提升編寫效率的使用者快速產生DSL。BSearch-QueryBuilder外掛程式背景資訊

BSearch-QueryBuilder外掛程式具有如下特性:

  • 簡單易用:BSearch-QueryBuilder外掛程式提供了可視化的介面點選操作來構造Elasticsearch的DSL查詢請求,無編碼即可完成自訂條件的資料查詢,減少了複雜的DSL的學習成本。也可輔助開發人員編寫或驗證DSL語句的正確性。

  • 方便快捷:已經定義的複雜查詢條件會儲存在Kibana中,避免重複構造查詢條件。

  • 小巧輕盈:約佔用14MB的磁碟空間,不會常駐記憶體運行,不影響Kibana和Elasticsearch的正常運行。

  • 安全可靠:BSearch-QueryBuilder外掛程式不會對使用者的資料進行改寫、儲存和轉寄,原始碼已經通過了阿里雲安全審計。

說明

僅6.3和6.7版本的Elasticsearch執行個體支援BSearch-QueryBuilder外掛程式。

操作步驟

  1. 登入對應Elasticsearch執行個體的Kibana控制台。

    具體操作,請參見登入Kibana控制台

  2. 可選:在左側導覽列,單擊Management,按照以下步驟建立一個索引模式。

    重要

    如果已經建立了索引模式,可忽略此步驟。

    1. Management頁面,單擊Kibana地區中的Index Patterns

    2. Create index pattern頁面,輸入索引模式名稱(待查詢的索引名稱)。

    3. 單擊Next step

      Create index pattern 頁面的 Index pattern 輸入框中輸入 product_info,頁面提示成功匹配 1 個索引。

    4. 單擊Create index pattern

  3. 在左側導覽列,單擊Discover

  4. Discover頁面,單擊右上方功能表列的Query

  5. 在查詢地區添加查詢和過濾條件,單擊Submit(提交)。

    • 單擊查詢條件表徵圖,添加一個查詢條件。

    • 單擊添加一個子過濾條件表徵圖,為查詢添加一個子過濾條件。

    • 單擊刪除一個查詢或過濾條件表徵圖,刪除一個查詢或過濾條件。

    BSearch-QueryBuilder支援模糊查詢、多條件組合查詢和自訂時間範圍查詢等多種查詢方式,查詢樣本如下:

    • 模糊查詢

      以下樣本中表示對郵箱這個條件進行模糊查詢,並要求郵箱模糊比對iga。在篩選條件中,將欄位設定為 email,匹配方式選擇萬用字元(Wildcard),輸入匹配值 *iga*,然後單擊 submit 提交查詢。

      最終得到的匹配結果如下。查詢結果顯示所有郵箱中包含 iga 的記錄,例如 abigail@salazar-family.zzzabigail@banks-family.zzz 等,同時展示 customer_first_namecustomer_gendertaxful_total_price 等欄位。

    • 多條件組合查詢

      以下樣本的查詢條件表示index必須為tryme_book,同時要對type進行過濾。要求type等於大學教輔数学對外漢語教學大學教材。在查詢構建器中,選擇索引 tryme_book,匹配方式選擇 Match。添加 OR 邏輯條件組,包含四個 type 欄位的匹配條件,值分別為 大學教輔數學對外漢語教學大學教材,單擊 submit 提交查詢。

      最終得到的匹配結果如下。執行該查詢後,Kibana Discover 返回多條匹配的書籍文檔,每條記錄以 JSON 格式展示 authorpricepublishnameinfo 等欄位資訊。

    • 自訂時間範圍查詢

      當您需要對時間欄位進行篩選時,可使用時間類型的篩選功能。以下樣本對utc_time進行時間範圍篩選,查詢[目前時間-240天,目前時間]範圍內的資料。將過濾條件欄位設定為 utc_time,條件類型選擇 最近幾天(In the last),輸入值為 240 days,然後單擊 submit 按鈕提交查詢。

      最終得到的匹配結果如下。查詢結果顯示所有在指定時間範圍(最近 240 天)內匹配的資料記錄。

使用bsearch_label外掛程式為資料打標

bsearch_label是一個純前端的資料打標外掛程式,無需編寫DSL語句即可以可視化方式完成資料打標。通過打標,可以對某個欄位(或新增一個欄位)賦予一個特殊的標籤值,後續可根據標籤進行彙總分類統計或快速過濾。

操作步驟

  1. 登入目標Elasticsearch執行個體的Kibana控制台。具體操作,請參見通過Kibana串連叢集

  2. 可選: 在左側導覽列,單擊Management,按照以下步驟建立一個索引模式。如果已經建立了索引模式,可忽略此步驟。

    1. Management 頁面,單擊 Kibana 地區中的 Index Patterns

    2. Create index pattern 頁面,輸入索引模式名稱(待查詢的索引名稱)。

    3. 單擊 Next step

    4. 單擊 Create index pattern

  3. 在左側導覽列,單擊 Discover

  4. Discover 頁面,單擊右上方功能表列的 打标

    安裝bsearch_label外掛程式後才可以看到 打标 按鈕。

  5. 根據需求,選擇以下任意一種方式完成資料打標。

對已有欄位打標

  1. 如查詢名字是張三的資料。

  2. 選擇 age 欄位,將其標記為 18

  3. 單擊 確認打標

  4. 開啟 歷史打標 開關,查看歷史打標任務詳情。

對新增欄位打標

  1. 如查詢名字是張三的資料。

  2. 勾選 自訂打標欄位

  3. 新增一個欄位 tag,並將其標記為 teenager

  4. 單擊 確認打標,查看打標結果。

卸載外掛程式

外掛程式配置地區中,單擊對應外掛程式右側操作列下的卸載,根據提示完成卸載。

重要

卸載外掛程式也需要重啟Kibana節點,重啟過程中Kibana不能正常提供服務,請在業務低峰期操作。