管理 Amazon OpenSearch Serverless 的容量限制 - 亚马逊 OpenSearch 服务
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

管理 Amazon OpenSearch Serverless 的容量限制

有了 Amazon OpenSearch Serverless,您不必自己管理容量。 OpenSearch Serverless 会根据当前的工作负载自动扩展您账户的计算容量。无服务器计算容量以OpenSearch 计算单位 (OCUs) 来衡量。每个 OCU 是 6GiB 内存和相应的虚拟 CPU(vCPU)以及创建到 Amazon S3 的数据管道的组合。有关 OpenSearch Serverless 中分离架构的更多信息,请参阅。工作方式

当您创建第一个集合时, OpenSearch Serverless 会 OCUs 根据您的冗余设置进行实例化。默认情况下,冗余活动副本处于启用状态,这意味着总共实例化了四个 OCUs 副本(两个用于索引,两个用于搜索),以确保备用节点位于另一个可用区域的高可用性。出于开发和测试目的,您可以禁用集合的启用冗余设置,这将消除备用副本,只实例化两个副本 OCUs (一个用于索引,一个用于搜索)。即使没有索引或搜索活动,它们也 OCUs 始终存在。所有后续集合都可以共享这些集合 OCUs (具有唯一 Amazon KMS 密钥的集合除外,这些集合会实例化自己的集合)。 OCUs如果需要,随着索引和搜索使用量的增长, OpenSearch Serverles OCUs s 会自动扩展并添加更多内容。当您的集合终端节点上的流量减少时,容量会缩小到您的数据大小 OCUs 所需的最小数量。对于搜索和时间序列集合,空闲时 OCUs 所需的数量与数据大小和索引计数成正比。对于向量,存储矢量图取决于内存 (RAM) 和存储索引的磁盘空间。如果未处于空闲状态,OCU 要求会同时考虑这两个因素。

向量集合将索引数据保存在OCU本地存储中。达到 OCU RAM 限制的速度比 OCU 磁盘限制的速度快,从而导致矢量集合受到 RAM 空间的限制。最多会缩减至 1 个 OCU [0.5 个 OCU x 2] 用于索引,和 1 个 OCU [0.5 个 OCU x 2] 用于搜索。扩展还会影响您的集合或索引所需的分片数量。每个 OCU 可以支持指定数量的分片。索引的数量应与分片计数成正比。 OCUs 所需的基础总数是所需的最大数据、内存和分片量。有关更多信息,请参阅Amazon 大数据博客任何规模的 Amazon OpenSearch Serverless 经济实惠的搜索功能

对于搜索向量搜索集合,所有数据都将存储在热索引中,以确保快速查询响应时间。时间序列集合使用热存储和温存储的组合,在热存储中保留最新数据,以优化访问频率更高的数据的查询响应时间。有关更多信息,请参阅 选择集合类型

注意

矢量搜索集合无法 OCUs 与搜索集合和时间序列集合共享,即使矢量搜索集合使用与搜索集合或时间序列集合相同的 KMS 密钥。 OCUs 将为您的第一个矢量集合创建一组新的矢量图集。向 OCUs 量集合在相同的 KMS 密钥集合之间共享。

为了管理馆藏容量和控制成本,您可以为当前账户和区域指定索引和搜索的总体最大容量, OpenSearch Serverless 会根据这些规格自动扩展您的馆藏资源。

由于索引和搜索容量单独扩缩,因此您可以为每种容量指定账户级限制:

  • 最大索引容量 — OpenSearch Serverless 可以将索引容量增加到这个数量。 OCUs

  • 最大搜索容量 — OpenSearch Serverless可以将搜索容量增加到此数量. OCUs

注意

目前,容量设置仅应用于账户级。您无法配置每个集合的容量限制。

您的目标是确保最大容量足以处理工作负载峰值。根据您的设置, OpenSearch Serverless 会自动扩展馆藏 OCUs 的数量,以处理索引和搜索工作量。

配置容量设置

要在 OpenSearch 无服务器控制台中配置容量设置,请在左侧导航窗格中展开无服务器,然后选择控制面板。Capacity management(容量管理)下,指定最大索引和搜索容量:

Capacity management dashboard showing indexing and search capacity graphs with 10 OCU limits.

要使用配置容量 Amazon CLI,UpdateAccountSettings请发送请求:

aws opensearchserverless update-account-settings \ --capacity-limits '{ "maxIndexingCapacityInOCU": 8,"maxSearchCapacityInOCU": 9 }'

最大容量限制

一个集合可以包含的最大索引总数为 1000。对于所有三种类型的馆藏,用于索引的默认最大 OCU 容量为 10 OCUs ,搜索的最大 OCU 容量 OCUs 为 10。一个账户允许的最小 OCU 容量为 1 个 OCU [0.5 OCU x 2] 用于索引,1 个 OCU [0.5 OCU x 2] 用于搜索。对于所有馆藏,允许的最大索引容量为 1,700, OCUs 搜索的最大允许容量为 1,700 OCUs 。您可以按 2 的整数倍,将 OCU 计数配置为从 1 到允许的最大容量之间的任意数字。

每个 OCU 都包含足够的临时热存储空间,可存放 120 GiB 的索引数据。 OpenSearch 在搜索和矢量搜索集合中,Serverless 支持每个索引最多 1 TiB 的数据,在时间序列集合中,每个索引最多支持 100 TiB 的热门数据。对于时间序列集合,您仍然可以摄取更多数据,这些数据可作为暖数据存储在 S3 中。

有关所有配额的列表,请参阅OpenSearch 无服务器配额

监控容量使用情况

您可以监控SearchOCUIndexingOCU账户级别的 CloudWatch 指标,以了解您的收款规模是如何扩展的。建议您配置警报,以便在您的账户接近与容量相关的指标阈值时通知您,使您能够相应调整容量设置。

您还可以使用这些指标确定您的最大容量设置是否合适,或者是否需要调整它们。分析这些指标,以便您将精力集中在优化集合效率上。有关 OpenSearch Serverless 发送到的指标的更多信息 CloudWatch,请参阅监控 Amazon OpenSearch 无服务器