本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
管理 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,但具有唯一 AWS KMS 密钥的集合除外,这些集合会实例化自己的集合。 OCUs与一个收藏组关联的所有收藏集可以共享同一组收藏 OCUs。单个集合组中只能包含一种类型的集合(搜索、时间序列或矢量搜索)。有关更多信息,请参阅 Amazon OpenSearch 无服务器收集组。
OpenSearch 随着索引和搜索使用量的增长,Serverles OCUs s 会自动扩展和增加。当流量减少时,容量会缩小到您的数据大小 OCUs 所需的最小数量。
对于搜索和时间序列集合,空闲时 OCUs 所需的数量与数据大小和索引数成正比。对于矢量集合,OCU 要求取决于用于存储矢量图的内存 (RAM) 和用于存储索引的磁盘空间。非空闲时,OCU 要求会考虑这两个因素。
矢量集合将索引数据存储在 OCU 本地存储中。达到 OCU RAM 限制的速度快于磁盘限制,后者按 RAM 空间限制矢量收集。
启用冗余后,用于索引的 OCU 容量将缩小到最少 1 个 OCU(0.5 OCU x 2),用于搜索,最少 1 个 OCU(0.5 OCU x 2)。禁用冗余功能后,您的馆藏可以缩小到 0.5 OCU 用于索引,缩小到 0.5 OCU 用于搜索。
扩展还需考虑集合或索引所需的分片数量。每个 OCU 支持指定数量的分片,并且索引数量应与分片计数成正比。 OCUs 所需的基础总数是您的数据、内存和分片需求的最大值。有关更多信息,请参阅AWS 大数据博客上任何规模的 Amazon OpenSearch Serverless 经济实惠的搜索功能
对于搜索和向量搜索集合,所有数据都将存储在热索引中,以确保快速查询响应时间。时间序列集合使用热存储和温存储的组合,在热存储中保留最新数据,以优化访问频率更高的数据的查询响应时间。有关更多信息,请参阅 选择集合类型。
注意
矢量搜索集合无法 OCUs 与搜索集合和时间序列集合共享,即使矢量搜索集合使用与搜索集合或时间序列集合相同的 KMS 密钥。 OCUs 将为您的第一个矢量集合创建一组新的矢量图集。向 OCUs 量集合在相同的 KMS 密钥集合之间共享。
为了管理馆藏容量和控制成本,您可以为当前账户和区域指定索引和搜索的总体最大容量, OpenSearch Serverless 会根据这些规格自动扩展您的馆藏资源。
由于索引和搜索容量单独扩缩,因此您可以为每种容量指定账户级限制:
-
最大索引容量 — OpenSearch Serverless 可以将索引容量增加到这个数量。 OCUs
-
最大搜索容量 — OpenSearch Serverless可以将搜索容量增加到此数量. OCUs
注意
目前,容量设置仅应用于账户级。您无法配置每个集合的容量限制。
您的目标是确保最大容量足以处理工作负载峰值。根据您的设置, OpenSearch Serverless 会自动扩展馆藏 OCUs 的数量,以处理索引和搜索工作量。
配置容量设置
要在 OpenSearch 无服务器控制台中配置容量设置,请在左侧导航窗格中展开无服务器,然后选择控制面板。在 Capacity management(容量管理)下,指定最大索引和搜索容量:
要使用配置容量 AWS 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 无服务器配额。
监控容量使用情况
您可以监控SearchOCU和IndexingOCU账户级别的 CloudWatch 指标,以了解您的收款规模是如何扩展的。建议您配置警报,以便在您的账户接近与容量相关的指标阈值时通知您,使您能够相应调整容量设置。
您还可以使用这些指标确定您的最大容量设置是否合适,或者是否需要调整它们。分析这些指标,以便您将精力集中在优化集合效率上。有关 OpenSearch Serverless 发送到的指标的更多信息 CloudWatch,请参阅监控 Amazon OpenSearch 无服务器。