适用于 Amazon OpenSearch Service 域的 OpenSearch 优化型实例(OR1)
适用于 Amazon OpenSearch Service 的 OpenSearch 优化型实例系列是存储海量数据的经济高效解决方案。使用 OpenSearch 优化型实例(OR1、OR2、OM2)的域将 Amazon Elastic Block Store(Amazon EBS)gp3 或 io1 卷作为主存储,并在数据到达时同步复制到 Amazon S3。这种存储结构提供更高的索引吞吐量和较高的耐久性。OpenSearch 优化型实例系列还支持在发生故障时自动恢复数据。有关 OpenSearch 优化型实例类型选项的信息,请参阅 当前一代实例类型。
如果您要运行有大量索引的运营分析工作负载,例如日志分析、可观测性或安全分析,则可以利用 OpenSearch 优化型实例更好的性能和计算效率优势。此外,OpenSearch 优化型实例提供的自动数据恢复功能也可提高域的整体可靠性。
OpenSearch Service 会向 Amazon CloudWatch 发送与存储相关的 OpenSearch 优化型实例指标。有关可用指标的列表,请参阅 OpenSearch 优化实例(OR1)指标。
OpenSearch 优化型实例可按需使用,也可使用预留实例定价,对于在 Amazon EBS 和 Amazon S3 中预置的实例和存储按小时收费。
限制
将 OpenSearch 优化型实例用于域时,请注意以下限制。
-
新创建的域必须运行 OpenSearch 版本 2.11 及更高版本。
-
现有的域必须运行 OpenSearch 版本 2.15 及更高版本。
-
域必须启用静态加密。有关更多信息,请参阅 Amazon OpenSearch Service 中的静态数据加密。
-
如果您的域使用专用主节点,则这些节点必须使用 Graviton 实例。有关专用主节点的更多信息,请参阅 Amazon OpenSearch Service 中的专用主节点。
-
OpenSearch 优化型实例上的索引刷新间隔必须为 10 秒或更长。OpenSearch 优化型实例的默认刷新间隔为 10 秒。
进行微调以提高摄取吞吐量
要利用 OpenSearch 优化型实例获得最佳的索引吞吐量,我们建议您执行以下操作:
-
使用大批量大小以提高缓冲区利用率。建议的大小为 10 MB。
-
使用多个客户端来提高并行处理性能。
-
活动主分片数量的设置要与数据节点的数量相匹配,从而尽可能提高资源利用率。
OpenSearch 优化型实例与其他实例有何不同
OpenSearch 优化型实例与非优化型实例的区别如下:
-
OpenSearch 优化型实例仅在主分片上创建索引。
-
如果 OpenSearch 优化型实例配置了副本,则显示的索引创建速率可能低于实际水平。例如,假设有 1 个主分片和 1 个副本分片,则索引创建速率可能显示为 1000,而实际索引创建速率为 2000。
-
OpenSearch 优化型实例在发送到远程源之前会执行缓冲操作。这会导致摄取延迟更高。
注意
IndexingLatency指标不受影响,因为该指标不包括同步 translog 的时间。 -
副本分片相比主分片可能有几秒的延迟。您可以使用
ReplicationLagMaxTimeAmazon CloudWatch 指标监控滞后性。
OpenSearch 优化型实例与 UltraWarm 实例有何不同
OpenSearch Service 提供了 UltraWarm 实例,从而以经济高效的方式存储大量只读数据。OpenSearch 优化型实例和 UltraWarm 实例都在本地将数据存储在 Amazon EBS 中,并远程将数据存储在 Amazon S3 中。但 OpenSearch 优化型实例和 UltraWarm 实例之间存在以下几个重要的区别:
-
OpenSearch 优化型实例在本地和远程存储中都保存了一份数据。而对于 UltraWarm 实例,数据主要保存在远程存储中,从而降低存储成本。根据您的使用模式,可以将数据移动到本地存储。
-
OpenSearch 优化型实例处于活动状态,可以接受读取和写入操作,而在您手动将数据移回热存储之前,UltraWarm 实例上的数据是只读的。
-
UltraWarm 依靠索引快照来保证数据的持久性。与此相对,OpenSearch 优化型实例在幕后执行复制和恢复。如果索引为红色,OpenSearch 优化型实例将自动从 Amazon S3 中的远程存储中恢复缺失的分片。恢复时间因要恢复的数据量而异。
有关 UltraWarm 存储的更多信息,请参阅 Amazon OpenSearch Service 的 UltraWarm 存储。
使用 OpenSearch 优化型实例预置域
使用 Amazon Web Services 管理控制台 或 Amazon Command Line Interface(Amazon CLI)创建新域时,您可以为数据节点选择 OpenSearch 优化型实例。您可以使用现有的工具来创建索引和查询数据。
-
导航到 Amazon OpenSearch Service 控制台,地址为 https://console.amazonaws.cn/aos/
。 -
在左侧导航窗格中,选择域。
-
选择创建域。
-
在数据节点数量部分,展开实例系列菜单,然后选择 OpenSearch 优化型实例。
-
选择实例类型和其他存储设置。
-
在加密部分,确保选中启用静态数据加密。
-
配置域的其余部分,选择创建。
要通过 Amazon CLI 使用 OpenSearch 优化型存储预置域,您必须在 InstanceType 中提供特定实例类型大小的值(例如 OR1、OR2 或 OM2)。
以下示例使用大小为 2xlarge 的 OR1 实例创建域,并启用静态加密。
aws opensearch create-domain \ --domain-nametest-domain\ --engine-version OpenSearch_2.11 \ --cluster-config "InstanceType=or1.2xlarge.search,InstanceCount=3,DedicatedMasterEnabled=true,DedicatedMasterType=r6g.large.search,DedicatedMasterCount=3" \ --ebs-options "EBSEnabled=true,VolumeType=gp3,VolumeSize=200" \ --encryption-at-rest-options Enabled=true \ --advanced-security-options "Enabled=true,InternalUserDatabaseEnabled=true,MasterUserOptions={MasterUserName=test-user,MasterUserPassword=test-password}" \ --node-to-node-encryption-options Enabled=true \ --domain-endpoint-options EnforceHTTPS=true \ --access-policies '{"Version": "2012-10-17", "Statement":[{"Effect":"Allow","Principal":{"AWS":"*"},"Action":"es:*","Resource":"arn:aws:es:us-east-1:account-id:domain/test-domain/*"}]}'