本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon OpenSearch Service 的 OR1 存储
OR1 是 Amazon OpenSearch Service 的一个实例系列,它通过经济高效的方式存储大量数据。使用 OR1 实例的域将 Amazon Elastic Block Store(Amazon EBS)gp3
或 io1
卷作为主存储,并在数据到达时同步复制到 Amazon S3。这种存储结构提供更高的索引吞吐量和较高的耐久性。OR1 实例系列还支持在发生故障时自动恢复数据。有关 OR1 实例类选项的信息,请参阅 当前一代实例类型。
如果您要运行有大量索引的运营分析工作负载,例如日志分析、可观测性或安全分析,则可以利用 OR1 实例更好的性能和计算效率优势。此外,OR1 实例提供的自动数据恢复功能也可提高域的整体可靠性。
OpenSearch Service 会向 Amazon CloudWatch 发送与存储相关的 OR1 指标。有关可用指标的列表,请参阅 OR1指标。
OR1 实例可按需使用,也可使用预留实例定价,对于在 Amazon EBS 和 Amazon S3 中预置的实例和存储按小时收费。
限制
将 OR1 实例用于域时,请注意以下限制。
-
新创建的域必须运行 OpenSearch 版本 2.11 及更高版本。
-
现有的域必须运行 OpenSearch 版本 2.15 及更高版本。
-
域必须启用静态加密。有关更多信息,请参阅 为 Amazon OpenSearch 服务加密静态数据。
-
如果您的域使用专用主节点,则这些节点必须使用 Graviton 实例。有关专用主节点的更多信息,请参阅 Amazon OpenSearch 服务中的专用主节点。
-
OR1 实例上的索引刷新间隔必须为 10 秒或更长。OR1 实例的默认刷新间隔为 10 秒。
进行微调以提高摄取吞吐量
要利用 OR1 实例获得最佳的索引吞吐量,建议您执行以下操作:
-
使用大批量大小来提高缓冲区利用率。建议的大小为 10 MB。
-
使用多个客户端来提高并行处理性能。
-
活动主分片数量的设置要与数据节点的数量相匹配,从而尽可能提高资源利用率。
OpenSearch 优化型实例与非 OpenSearch 优化型实例有何不同
OpenSearch 优化型实例与非 OpenSearch 优化型实例的区别如下:
-
OpenSearch 优化型实例仅在主分片上创建索引。
-
如果 OpenSearch 优化型实例配置了副本,则显示的索引创建速率可能低于实际水平。例如,假设有 1 个主分片和 1 个副本分片,则索引创建速率可能显示为 1000,但实际索引创建速率为 2000。
-
OpenSearch 优化型实例在发送到远程源之前会执行缓冲操作。这会导致摄取延迟更高。
注意
IndexingLatency
指标不受影响,因为该指标不包括同步 translog 的时间。 -
副本分片相比主分片可能有几秒的延迟。延迟量可通过
ReplicationLagMaxTime
指标查看。
OR1 与 UltraWarm 存储有何不同
OpenSearch Service 提供了 UltraWarm 实例,从而以经济高效的方式存储大量只读数据。OR1 和 UltraWarm 实例都在本地将数据存储在 Amazon EBS 中,并远程将数据存储在 Amazon S3 中。但 OR1 和 UltraWarm 实例之间存在以下几个重要的区别:
-
OR1 实例在本地和远程存储中都保存了一份数据。而对于 UltraWarm 实例,数据主要保存在远程存储中,从而降低存储成本。根据您的使用模式,可以将数据移动到本地存储。
-
OR1 实例处于活动状态,可以接受读取和写入操作,而在您手动将数据移回热存储之前, UltraWarm 实例上的数据是只读的。
-
UltraWarm 依靠索引快照来保证数据的持久性。与此相对,OR1 实例在幕后执行复制和恢复。如果索引为红色,OR1 实例将自动从 Amazon S3 中的远程存储中恢复缺失的分片。恢复时间因要恢复的数据量而异。
有关 UltraWarm 存储的更多信息,请参阅 Amazon OpenSearch Service 的 UltraWarm 存储。
使用 OR1 实例
使用 AWS Management Console、AWS Command Line Interface(AWS CLI)或 AWS SDK 创建新域时,您可以为数据节点选择 OR1 实例。您可以使用现有的工具来创建索引和查询数据。
-
导航到 Amazon OpenSearch Service 控制台,地址为 https://console.aws.amazon.com/aos/
。 -
在左侧导航窗格中,选择 Domains(域)。
-
选择创建域。
-
输入域名以及其他首选选项。在实例系列下,选择 OR1。选择创建按钮,开始域创建过程。
-
导航到您的 AWS CLI 终端。如果需要安装 AWS CLI,请参阅安装或更新 AWS CLI 的最新版本。
-
要使用 OR1 存储,您必须在创建域时在
InstanceType
字段中提供具体 OR1 实例类型大小的值。此外,您还必须启用静态加密。以下示例使用大小为
2xlarge
的 OR1 实例创建域。aws opensearch create-domain \ --domain-name
test-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
/*"}]}'