全部產品
Search
文件中心

Elasticsearch:初級版:從執行個體建立到資料檢索

更新時間:Apr 04, 2026

本教程指導初次接觸Elasticsearch(ES)的開發人員,在約45分鐘(含約20分鐘的執行個體建立等待時間)內完成從執行個體建立到資料檢索的完整學習流程。

學習內容

  • 建立並配置一個ES執行個體

  • 通過Kibana的開發工具(Dev Tools)進行資料建模。

    Kibana是ES的核心組件之一,能夠讓使用者通過直觀的圖形化方式探索、分析和展示儲存在 ES 中的資料。為方便使用者使用,Kibana已內建在ES控制台,無需手動安裝。

  • 插入樣本資料並執行多種檢索操作。

完成本教程後,可掌握ES最基礎的索引建立、資料讀寫和搜尋能力。

ES版本與成本說明

正式操作前,需瞭解以下測試過程中涉及的關鍵資訊:

  • ES類型和版本:向量增強版 8.17.0。

    該版本將 AI 搜尋鏈路中的核心演算法服務元件化,包含文檔解析、切片、文本向量化、查詢分析、召回、排序以及 LLM 模型,支援語義搜尋,助力企業快速構建 RAG 和多模態搜尋能力。

  • 成本預估:本教程全程採用隨用隨付模式。若嚴格按照推薦規格和時間長度操作,預計總花費在5美元以內。測試完成後,請立即釋放執行個體,以避免產生不必要的費用。

前提條件

  • 註冊並登入阿里雲帳號:確保帳號擁有建立和管理Elasticsearch、VPC等資源的許可權。

  • 建立Virtual Private Cloud和虛擬交換器vSwitch,記錄VPC和vSwitch所在的地區可用性區域。後續建立ES執行個體時必須選擇相同的地區和可用性區域,否則無法關聯。

操作步驟

步驟一:建立叢集(約20分鐘)

  1. 進入執行個體建立頁面建立執行個體,關鍵參數配置如下,其他參數預設即可。

    參數

    說明

    付費類型

    隨用隨付,可隨時釋放。

    地區可用區

    • 地區:選擇已建立的VPC和vSwitch所在地區。

    • 可用性區域:測試需求下,為減少執行個體建立等待時間,選擇單可用性區域。應用生產環境時,可升級為多可用性區域。

    本樣本為華東1(杭州)/ 可用性區域I。

    網路類型

    選擇已建立的VPC和vSwitch。

    執行個體類型Elasticsearch版本

    向量增強版8.17.0,本教程基於此版本。

    資料節點規格

    • CPU類型:Intel 2核4G。

    • 資料節點儲存類型及數量:SSD雲端硬碟、單節點儲存空間20GiB。

    • 資料節點數量:2。

    資料節點是儲存索引資料的節點,主要對文檔進行增刪改查、彙總等操作。

    ES_test

    登入密碼

    自訂,後續用於登入Kibana進行索引構建與資料探索。

  2. 單擊立即購買,等待約20分鐘直至執行個體狀態變為正常即可進入下一步操作。

步驟二:配置並登入Kibana

Kibana公網訪問地址預設開啟,出於安全考慮,公網訪問預設禁止所有IP,需要將待訪問裝置的IP地址加入白名單才能訪問。

訪問鑒權採用雙步驟驗證:首先需登入您的阿里雲帳號,然後使用 ES 執行個體的訪問資訊(使用者名稱固定為 elastic 及其對應密碼)進行二次登入驗證。

  1. 在左側導覽列單擊可視化控制,在Kibana地區進入修改配置

  2. 訪問配置模組,修改Kibana公網訪問白名單。

    擷取待訪問裝置IP

    您可以參照以下情境,擷取待訪問裝置的IP地址。

    情境

    需擷取的IP地址

    擷取方式

    在本地裝置中通過公網地址訪問Kibana。

    本地裝置公網IP。

    說明

    如果您的本地裝置處在家用網路或公司區域網路中,需要添加區域網路的公網出口IP地址。

    通過curl ipinfo.io/ip查詢本地裝置公網IP。

    在ECS執行個體中通過公網地址訪問Kibana。

    當ECS與ES在不同專用網路中時,可通過ECS公網地址訪問Kibana,此時需擷取ECS的公網IP並添加到ES公網白名單中。

    登入ECS控制台,在執行個體列表查看執行個體的公網IP地址。

    添加公網白名單

    擷取待訪問裝置IP並將其添加至公網白名單中。

    1. 單擊default分組右側的配置,在彈出的對話方塊中添加IP白名單。

      配置類別

      格式和樣本值

      重要注意事項

      IPv4地址格式

      • 單個IP:192.168.0.1

      • 網段:192.168.0.0/24,建議將零散的IP合并為IP段

      單個叢集最多可配置300個IP或者IP網段,多個IP或者IP網段之間用英文逗號隔開,且逗號前後不能有空格。

      • 公網預設地址:127.0.0.1,表示禁止所有IPv4地址訪問。

      • 0.0.0.0/0:允許所有IPv4訪問。

        重要
        • 強烈建議不要配置 0.0.0.0/0,存在高危風險。

        • 部分叢集和地區不支援 0.0.0.0/0,請以介面或者報錯提示為準。

    2. 配置完成後,單擊確認

  3. 單擊公網入口,在Kibana登入頁面,輸入使用者名稱和密碼,成功登入即可進入Kibana控制台進行ES資料探索。

    • 使用者名稱:固定為elastic。

    • 密碼:建立ES叢集時設定的密碼,如遺忘可重設密碼

  4. 進入開發工具控制台,執行GET /查詢叢集資訊。

    結果驗證:右側視窗返回包含版本號碼、叢集名稱等資訊的JSON對象,則表示串連正常。

步驟三:建立索引

在Kibana的開發工具中執行Restful API為理財產品資料建立索引(Mapping)product_info

PUT /product_info
{
  "settings": {
    "number_of_shards": 5,
    "number_of_replicas": 1
  },
  "mappings": {
      "properties": {
        "productName": {
          "type": "text",
          "analyzer": "ik_smart"
        },
        "annual_rate":{
          "type":"keyword"
        },
        "describe": {
          "type": "text",
          "analyzer": "ik_smart"
        }
    }
  }
}

核心參數說明:

settings:定義索引分區配置,如定義5個主分區,每個主分區1個副本。
mappings:定義索引欄位。如定義索引檔案中有productNameannual_ratedescribe3個欄位。text類型欄位支援分詞和模糊搜尋,keyword類型欄位用於精確值匹配,更多欄位類型請參見Field data types

結果驗證:返回結果含"acknowledged": true"shards_acknowledged": true表示索引建立成功。

步驟四:插入資料

執行以下代碼批量插入測試資料:

POST /product_info/_bulk
{"index":{}}
{"productName":"理財產品A","annual_rate":"3.2200%","describe":"180天定期理財,最低20000起投,收益穩定,可以自助選擇訊息推送"}
{"index":{}}
{"productName":"理財產品B","annual_rate":"3.1100%","describe":"90天定投產品,最低10000起投,每天收益到賬訊息推送"}
{"index":{}}
{"productName":"理財產品C","annual_rate":"3.3500%","describe":"270天定投產品,最低40000起投,每天收益立即到賬訊息推送"}
{"index":{}}
{"productName":"理財產品D","annual_rate":"3.1200%","describe":"90天定投產品,最低12000起投,每天收益到賬訊息推送"}
{"index":{}}
{"productName":"理財產品E","annual_rate":"3.0100%","describe":"30天定投產品推薦,最低8000起投,每天收益會訊息推送"}
{"index":{}}
{"productName":"理財產品F","annual_rate":"2.7500%","describe":"熱門短期產品,3天短期,無須任何手續約用,最低500起投,通過簡訊通知擷取收益訊息"}

結果驗證:返回結果含"errors": false表示資料插入成功。

步驟五:檢索資料

全文檢索索引(模糊比對)

查詢describe包含“每天收益到賬”的理財產品:

GET /product_info/_search
{
  "query": {
    "match": {
      "describe": "每天收益到賬訊息推送"
    }
  }
}

結果驗證:返回結果按相關性評分排序,評分越高的結果越靠前。

按條件檢索(精確匹配)

查詢annual_rate(年化利率)在3.00%~3.13%之間的理財產品:

GET /product_info/_search
{
  "query": {
    "range": {
      "annual_rate": {
        "gte": "3.0000%",
        "lte": "3.1300%"
      }
    }
  }
}

結果驗證:精確匹配數值範圍,返回合格結果,更多查詢條件的使用請參見QueryDSL

清理資源與後續學習

刪除資料並釋放ES執行個體

  1. 執行如下代碼,刪除本文建立的測試索引。

    DELETE /product_info

    返回結果如下:

    {
    ”acknowledged“ : true
    }
  2. 返回Elasticsearch控制台的執行個體列表。

  3. 在執行個體列表待釋放執行個體右側的操作列中,單擊更多 > 釋放執行個體,選擇無需等待,立即清除,單擊確認釋放執行個體。

    重要

    釋放執行個體會永久刪除該執行個體及其包含的所有資料,此操作無法復原,需謹慎操作。

後續學習路徑

如需深入學習ES,可從以下方向探索: