OR1 storage for Amazon OpenSearch Service - Amazon OpenSearch Service
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

OR1 storage for Amazon OpenSearch Service

OR1 is an instance family for Amazon OpenSearch Service that provides a cost-effective way to store large amounts of data. A domain with OR1 instances uses Amazon Elastic Block Store (Amazon EBS) gp3 or io1 volumes for primary storage, with data copied synchronously to Amazon S3 as it arrives. This storage structure provides increased indexing throughput with high durability. The OR1 instance family also supports automatic data recovery in the event of failure. For information about OR1 instance type options, see Current generation instance types.

If you're running indexing heavy operational analytics workloads such as log analytics, observability, or security analytics, you can benefit from the improved performance and compute efficiency of OR1 instances. In addition, the automatic data recovery offered by OR1 instances improves the overall reliability of your domain.

OpenSearch Service sends storage-related OR1 metrics to Amazon CloudWatch. For a list of available metrics, see OR1 metrics.

OR1 instances are available on-demand or with Reserved Instance pricing, with an hourly rate for the instances and storage provisioned in Amazon EBS and Amazon S3.

Limitations

Consider the following limitations when using OR1 instances for your domain.

  • Your domain must be running OpenSearch version 2.11 or higher.

  • Your domain must have encryption at rest enabled. For more information, see Encryption of data at rest for Amazon OpenSearch Service.

  • Your domain must be a new domain. You can't modify an existing domain to use OR1 instances.

  • If your domain uses dedicated master nodes, they must use Graviton instances. For more information about dedicated master nodes, see Dedicated master nodes in Amazon OpenSearch Service.

  • Shard sizes on OR1 instances must be smaller than 100 GiB. Shards larger than 100 GiB can slow recovery times. If you create shards larger than 100 GiB on OR1 instances, OpenSearch Service blocks write requests to the domain. If you still want to use shards larger than 100 GiB, contact Amazon Web Services Support to request a quota increase.

  • The refresh interval for indexes on OR1 instances must be 10 seconds or higher. The default refresh interval for OR1 instances is 10 seconds.

How OR1 differs from UltraWarm storage

OpenSearch Service provides UltraWarm instances that are optimized to reduce the cost of storing warm data. Both OR1 and UltraWarm instances store data locally in Amazon EBS and remotely in Amazon S3. However, OR1 and UltraWarm instances differ in several important ways:

  • OR1 instances keep a copy of the data in both local and remote storage. UltraWarm instances, to reduce storage costs, keep data primarily in remote storage. Depending on usage patterns, they might move it to local storage.

  • OR1 instances are active and can accept read and write operations, whereas the data on UltraWarm instances is read-only until you manually move it back to hot storage.

  • UltraWarm relies on index snapshots for data durability. OR1 instances, by comparison, performs replication and recovery behind the scenes. In the event of a red index, OR1 instances automatically restore the missing shards from remote storage in Amazon S3. The recovery time varies depending on the volume of data to be recovered.

For more information about UltraWarm storage, see UltraWarm storage for Amazon OpenSearch Service.

Using OR1 instances

You can select OR1 instances for your data nodes when you create a new domain with the Amazon Web Services Management Console, the Amazon Command Line Interface (Amazon CLI), or the Amazon SDK. You can then index and query the data using your existing tools.

  1. Navigate to the Amazon OpenSearch Service console at https://console.aws.amazon.com/aos/.

  2. In the left navigation pane, choose Domains.

  3. Choose Create domain.

  4. Enter a name for your domain along with your other preferred options. Under Instance family, choose OR1. Choose Create to start the domain creation process.

  1. Navigate to your Amazon CLI terminal. If you need to install the Amazon CLI, see Install or update the latest version of the Amazon CLI.

  2. To use OR1 storage, you must provide the value of the specific OR1 instance type size in the InstanceType field when you create a domain. You must also enable encryption at rest.

    The following example creates a domain with OR1 instances of size 2xlarge.

    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/*"}]}'