開始使用亞馬遜OpenSearch服務 - Amazon OpenSearch 服務

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

開始使用亞馬遜OpenSearch服務

本教程向您展示如何使用亞馬遜OpenSearch用於建立和設定測試網域的服務。一個OpenSearch服務網域與OpenSearch集群。網域是指具有您指定之設定、執行個體類型、執行個體計數和儲存資源的叢集。

本教程將引導您完成基本步驟以獲取OpenSearch服務域快速啟動和運行。如需更詳細的資訊,請參閱創建和管理 Amazon OpenSearch 服務域和本指南內的其他主題。如需移轉至的相關資訊OpenSearch自我管理的服務OpenSearch叢集,請參閱教學課程:遷移到亞馬遜OpenSearch服務

您可以使用完成本自學課程中的步驟OpenSearch服務主控台,AWS CLI,或AWSSDK。如需有關安裝與設定 AWS CLI 的資訊,請參閱 AWS Command Line Interface 使用者指南

第 1 步:創建一個亞馬遜OpenSearch服務網域

重要

這是一個簡明的教程,用於配置測試亞馬遜OpenSearch服務網域。請勿使用此程序來建立生產網域。如需相同程序的完整版本,請參閱創建和管理 Amazon OpenSearch 服務域

一個OpenSearch服務網域與OpenSearch集群。網域是指具有您指定之設定、執行個體類型、執行個體計數和儲存資源的叢集。您可以建立OpenSearch使用主控台的服務網域AWS CLI,或AWS軟體開發套件。

若要建立OpenSearch使用主控台的服務網域
  1. 前往 https://aws.amazon.com 並選擇 Sign In to the Console (登入主控台)

  2. 分析,選擇亞馬遜OpenSearch服務

  3. 選擇 Create domain (建立網域)。

  4. 提供網域名稱。本教學課程中的範例使用名稱 movies

  5. 對於網域建立方法,請選擇標準建立

    注意

    若要使用最佳做法快速設定生產網域,您可以選擇輕鬆創建。對於本教程的開發和測試目的,我們將使用標準建立

  6. 對於範本,請選擇開發/測試

  7. 對於部署選項,請選擇備用網域

  8. 對於 Version (版本),選擇最新版本。

  9. 現在,忽略資料節點,冷熱資料儲存,專用主節點,快照組態,以及自訂端點部分。

  10. 為了保持本教學課程的簡易性,請使用公有存取網域。在 Network (網路) 中,選擇 Public access (公有存取)。

  11. 在細微的存取控制設定中,保留啟用精細的存取控制已選取勾選方塊。选择建立主要使用者並提供用戶名和密碼。

  12. 現在,請忽略 SAML authentication (SAML 身分驗證) 和 Amazon Cognito authentication (Amazon Cognito 身分驗證) 區段。

  13. 對於 Access policy (存取政策),選擇 Only use fine-grained access control (僅使用精細存取控制)。在本教學課程中,精細存取控制會處理驗證,而非網域存取政策。

  14. 忽略其他設定,並選擇 Create (建立)。新網域通常需要 15-30 分鐘才能初始化,但視組態而定,可能需要更長的時間。網域初始化後,選擇網域以打開其組態窗格。記下 General information (一般資訊) 下的網域端點 (例如,https://search-my-domain.us-east-1.es.amazonaws.com),下一步會用到。

下一步:上傳資料至OpenSearch用於索引的服務網域

第 2 步:將數據上傳到亞馬遜OpenSearch服務索引

重要

這是一個簡潔的教程,用於將少量測試數據上傳到亞馬遜OpenSearch服務。如需有關在生產網域中上傳資料的詳細資訊,請參閱在亞馬遜 OpenSearch 服務中索引數據

您可以將數據上傳到OpenSearch使用命令列或大多數程式設計語言的服務網域。

為了簡潔和方便起見,下列範例請求使用 curl (常見的 HTTP 用戶端)。像 curl 一樣的用戶端無法執行請求簽署,但如果您的存取政策指定 IAM 使用者或角色,便需要執行請求簽署。若要順利完成此程序,您必須使用具有主要使用者名稱和密碼的精細存取控制,就像您在步驟一

您可以在 Windows 中安裝 curl,並在命令提示中使用它,但我們建議使用像 CygwinWindows Subsystem for Linux 之類的工具。macOS 和大部分 Linux 發行版本均預先安裝有 curl。

選項 1:上傳單一文件

執行以下命令,將單一文件加入到 movies 網域:

curl -XPUT -u 'master-user:master-user-password' 'domain-endpoint/movies/_doc/1' -d '{"director": "Burton, Tim", "genre": ["Comedy","Sci-Fi"], "year": 1996, "actor": ["Jack Nicholson","Pierce Brosnan","Sarah Jessica Parker"], "title": "Mars Attacks!"}' -H 'Content-Type: application/json'

在命令中,提供您在其中建立的使用者名稱和密碼步驟一

有關此命令以及如何向其發出簽名請求的詳細說明OpenSearch服務,請參閱在亞馬遜 OpenSearch 服務中索引數據

選項 2:上傳多個文件

若要將包含多個文件的 JSON 檔案上傳至OpenSearch服務網域
  1. 建立稱為 bulk_movies.json 的本機檔案。將以下內容貼到檔案中,並新增結尾新行:

    { "index" : { "_index": "movies", "_id" : "2" } } {"director": "Frankenheimer, John", "genre": ["Drama", "Mystery", "Thriller", "Crime"], "year": 1962, "actor": ["Lansbury, Angela", "Sinatra, Frank", "Leigh, Janet", "Harvey, Laurence", "Silva, Henry", "Frees, Paul", "Gregory, James", "Bissell, Whit", "McGiver, John", "Parrish, Leslie", "Edwards, James", "Flowers, Bess", "Dhiegh, Khigh", "Payne, Julie", "Kleeb, Helen", "Gray, Joe", "Nalder, Reggie", "Stevens, Bert", "Masters, Michael", "Lowell, Tom"], "title": "The Manchurian Candidate"} { "index" : { "_index": "movies", "_id" : "3" } } {"director": "Baird, Stuart", "genre": ["Action", "Crime", "Thriller"], "year": 1998, "actor": ["Downey Jr., Robert", "Jones, Tommy Lee", "Snipes, Wesley", "Pantoliano, Joe", "Jacob, Ir\u00e8ne", "Nelligan, Kate", "Roebuck, Daniel", "Malahide, Patrick", "Richardson, LaTanya", "Wood, Tom", "Kosik, Thomas", "Stellate, Nick", "Minkoff, Robert", "Brown, Spitfire", "Foster, Reese", "Spielbauer, Bruce", "Mukherji, Kevin", "Cray, Ed", "Fordham, David", "Jett, Charlie"], "title": "U.S. Marshals"} { "index" : { "_index": "movies", "_id" : "4" } } {"director": "Ray, Nicholas", "genre": ["Drama", "Romance"], "year": 1955, "actor": ["Hopper, Dennis", "Wood, Natalie", "Dean, James", "Mineo, Sal", "Backus, Jim", "Platt, Edward", "Ray, Nicholas", "Hopper, William", "Allen, Corey", "Birch, Paul", "Hudson, Rochelle", "Doran, Ann", "Hicks, Chuck", "Leigh, Nelson", "Williams, Robert", "Wessel, Dick", "Bryar, Paul", "Sessions, Almira", "McMahon, David", "Peters Jr., House"], "title": "Rebel Without a Cause"}
  2. 在儲存檔案的本機目錄中執行下列命令,以將其上傳到 movies 網域:

    curl -XPOST -u 'master-user:master-user-password' 'domain-endpoint/_bulk' --data-binary @bulk_movies.json -H 'Content-Type: application/json'

如需有關大量檔案格式的詳細資訊,請參閱在亞馬遜 OpenSearch 服務中索引數據

下一步搜尋文件

步驟 3:在亞馬遜中搜索文檔OpenSearch服務

在亞馬遜搜索文檔OpenSearch服務網域,請使用OpenSearch搜索 API。或者,您可以使用OpenSearch儀表板以搜尋網域中的文件。

從命令列搜尋文件

執行以下命令搜尋影片網域的 mars 這個字:

curl -XGET -u 'master-user:master-user-password' 'domain-endpoint/movies/_search?q=mars&pretty=true'

如果已在先前頁面中使用大量資料,則請嘗試改成搜尋 rebel

您應該會看到類似以下的回應:

{ "took" : 5, "timed_out" : false, "_shards" : { "total" : 5, "successful" : 5, "skipped" : 0, "failed" : 0 }, "hits" : { "total" : { "value" : 1, "relation" : "eq" }, "max_score" : 0.2876821, "hits" : [ { "_index" : "movies", "_type" : "_doc", "_id" : "1", "_score" : 0.2876821, "_source" : { "director" : "Burton, Tim", "genre" : [ "Comedy", "Sci-Fi" ], "year" : 1996, "actor" : [ "Jack Nicholson", "Pierce Brosnan", "Sarah Jessica Parker" ], "title" : "Mars Attacks!" } } ] } }

使用搜尋文件OpenSearch儀表板

OpenSearch儀表板是一種流行的開源可視化工具,旨在與OpenSearch。它提供了一個很有幫助的使用者介面,供您搜尋和監控您的索引。

從中搜尋文件的步驟OpenSearch使用儀表板的服務域
  1. 導覽至OpenSearch您網域的儀表板 URL。您可以在網域的儀表板上找到 URLOpenSearch服務主控台。URL 遵循以下格式:

    domain-endpoint/_dashboards/
  2. 使用您的主要使用者名稱和密碼登入。

  3. 若要使用 Dashboards,您需要建立至少一個索引模式。Dashboards 使用這些模式來識別您要分析的索引。開啟左側導覽面板,選擇 Stack Management (堆疊管理),選擇 Index Patterns (索引模式),然後選擇 Create index pattern (建立索引模式)。對於本教學課程,輸入 movies

  4. 選擇 Next step (下一步),然後選擇 Create index pattern (建立索引模式)。建立模式之後,您可以檢視各種文件欄位,例如 actordirector

  5. 返回 Index Patterns (索引模式) 頁面,並確認將 movies 設為預設值。如果不是,請選擇模式並選擇星形圖示以使其成為預設值。

  6. 若要開始搜尋您的資料,請再次開啟左側導覽面板,然後選擇 Discover (探索)。

  7. 如果上傳了單一文件,則在搜尋列中輸入 mars,或者如果上傳了多份文件,則輸入 rebel,然後按 Enter 鍵。您可以嘗試搜尋其他用語,例如演員或導演姓名。

下一步刪除網域

第 4 步:刪除亞馬遜OpenSearch服務網域

由於本教學課程的 movies 網域是用於測試目的,因此請確保在完成試驗後將其刪除,以避免產生任何費用。

若要刪除OpenSearch來自主控台的服務網域
  1. 登入到亞馬遜OpenSearch服務控制台。

  2. Domains (網域) 中,選取 movies 網域。

  3. 選擇 Delete (刪除),並確認刪除。

後續步驟

您現在已知道如何建立網域和索引資料,您可能想要嘗試以下一些練習: