View a markdown version of this page

教程:Amazon OpenSearch 无服务器入门 - 亚马逊 OpenSearch 服务

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

教程:Amazon OpenSearch 无服务器入门

本教程向您展示了快速启动并运行 Amazon OpenSearch Serverless 搜索集合的基本步骤。借助搜索集合,您可以为内部网络中的应用程序和面向互联网的应用程序提供支持,例如电子商务网站搜索和内容搜索。

要了解如何使用向量搜索集合,请参阅 使用向量搜索集合。有关使用集合的更多详细信息,请参阅管理 Amazon OpenSearch 无服务器馆藏和本指南中的其他主题。

您将在本教程中完成以下步骤:

  1. 配置权限

  2. 创建集合

  3. 上传和搜索数据

  4. 删除集合

    注意

    仅使用 ASCII 字符作为您的IndexName字符。如果您不使用 ASCII 字符IndexName,则对于非 ASCII 字符,输入 CloudWatch 指标将转换为网址编码格式。IndexName

步骤 1:配置权限

要完成本教程并全面使用 OpenSearch 无服务器,您必须拥有正确的 IAM 权限。在本教程中,您将创建一个集合、上传和搜索数据,然后删除该集合。

您的用户或角色必须已经附加基于身份的策略,并且具有以下最低权限:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "aoss:CreateCollection", "aoss:ListCollections", "aoss:BatchGetCollection", "aoss:DeleteCollection", "aoss:CreateAccessPolicy", "aoss:ListAccessPolicies", "aoss:UpdateAccessPolicy", "aoss:CreateSecurityPolicy", "aoss:GetSecurityPolicy", "aoss:UpdateSecurityPolicy", "iam:ListUsers", "iam:ListRoles" ], "Effect": "Allow", "Resource": "*" } ] }

有关 OpenSearch 无服务器 IAM 权限的更多信息,请参阅适用于 Amazon OpenSearch Serverless 的身份和访问管理

步骤 2:创建集合

集合是一组 OpenSearch 索引,它们协同工作以支持特定的工作负载或用例。

创建 OpenSearch 无服务器集合
  1. 打开亚马逊 OpenSearch 服务控制台,网址为https://console.aws.amazon.com/aos/home

  2. 在左侧导航窗格中,选择 “收藏夹”。

  3. 选择 Create collection(创建集合)。

  4. 对于名称,请输入 movies

  5. 对于 “收藏夹类型”,选择 “搜索”。有关更多信息,请参阅选择集合类型

  6. 在 “收藏夹创建方法” 中,选择 “快速创建”。

  7. 检查默认设置。其中包括集合组、 OpenSearch用户界面应用程序设置、使用公共网络访问进行加密,以及自动生成的数据访问策略。 AWS 拥有的密钥

  8. 选择 Create collection(创建集合)。

  9. 等待收集状态更改为Active。这可能需要花几分钟的时间。

提示

本教程使用 NextGen Express Create 方法。您也可以通过登录页面信息横幅中的快速创建按钮访问 Express Create,以获得更快的路径。要对加密、网络和数据访问设置进行更多控制,请使用标准创建。要使用经典收藏创建向导,请选择 “切换到经典版”。有关更多信息,请参阅 创建集合

步骤 3:上传并搜索数据

您可以使用 P ostm an 或 curl 将数据上传到 OpenSearch 无服务器集合。为简单起见,这些示例使用 OpenSearch 仪表板控制台中的开发工具

索引和搜索“movies”(电影)集合中的数据
  1. 选择左侧导航窗格中的 Collections(集合),然后选择 movies(电影)集合,以打开其详细信息页面。

  2. 为该集合选择 OpenSearch 仪表板 URL。该 URL 采用 https://dashboards.{region}.aoss.amazonaws.com/_login/?collectionId={collection-id} 格式。

  3. 在 “ OpenSearch 控制面板” 中,打开左侧导航窗格并选择 “开发工具”。

  4. 要创建名为 movies-index 的单个索引,请发送以下请求:

    PUT movies-index
    OpenSearch 仪表板控制台显示了对电影索引的 PUT 请求,响应状态为 200。
  5. 要将单个文档索引到 movies-index 中,请发送以下请求:

    PUT movies-index/_doc/1 { "title": "Shawshank Redemption", "genre": "Drama", "year": 1994 }
  6. 要在 OpenSearch 仪表板中搜索数据,您需要配置至少一种索引模式。 OpenSearch 使用这些模式来确定要分析的索引。打开左侧导航窗格,选择 Stack Management(堆栈管理),选择 Index Patterns(索引模式),然后选择 Create index pattern(创建索引模式)。在本教程中,请输入 movies

  7. 选择下一步,然后选择创建索引模式。创建模式后,您可以查看各种文档字段,例如 titlegenre

  8. 要开始搜索数据,请再次打开左侧导航窗格并选择 “发现”,或者使用开发者工具中的搜索 API

处理错误

运行索引和搜索操作时,可能会得到以下错误响应:

  • HTTP 507:表示出现内部服务器错误。此错误通常表示您的 OpenSearch 计算单元 (OCU) 因请求的数量或复杂性而过载。尽管 OpenSearch Serverless 会自动扩展以管理负载,但在部署其他资源时可能会出现延迟。

    要缓解此错误,请实施指数回退重试策略。此方法可暂时降低请求速率,从而有效管理负载。有关更多详细信息,请参阅《AWS SDK 和工具参考指南》中的 Retry behavior

  • HTTP 402— 表示您已达到最大 OpenSearch 计算单元 (OCU) 容量限制。优化工作负载,以减少 OCU 使用量或请求增加限额。

步骤 4:删除集合

由于影片收藏仅用于测试目的,因此请在完成实验后将其删除。

删除 OpenSearch 无服务器集合
  1. 返回亚马逊 OpenSearch 服务控制台。

  2. 选择左侧导航窗格中的 Collections(集合),然后选择 movies(电影)集合。

  3. 选择 Delete(删除),然后确认删除。

后续步骤

既然您已经知道如何创建集合和索引数据,那么您可能需要尝试以下方法: