There are no set-up fees or upfront commitments to begin using Amazon CloudSearch. Estimate your monthly bill using the AWS Simple Monthly Calculator. Customers are billed according to their monthly usage across the following dimensions:
- Search instances
- Document batch uploads
- IndexDocuments requests
- Data transfer
You are billed for hourly instance charges. Amazon CloudSearch currently supports four types of search instances: Small, Large, Extra Large, and Double Extra Large:
As a managed service, Amazon CloudSearch determines the size and number of search instances required to deliver low latency, high throughput search performance. When you upload your data and configure your index, Amazon CloudSearch builds an index and picks the appropriate initial search instance type to ensure that your index can be stored in RAM.
As your data volume and index grow, CloudSearch will scale your search domain to a larger search instance type (or partition your index across multiple instances if you are already on the largest search instance type). Conversely, when your data volume and index shrink, CloudSearch scales your domain down to fewer search instances (or a smaller search instance type if your index fits on a single partition).
As with data volume, Amazon CloudSearch automatically scales your search domain to meet your traffic demands. When a search instance reaches its maximum CPU utilization, CloudSearch scales up your search domain by adding a search instance to handle the increased traffic. Conversely, when a search instance drops below its minimum CPU utilization, CloudSearch scales down your search domain by removing the additional search instances in order to minimize costs.
Pricing is per instance-hour consumed for each search instance, from the time a search instance is launched until it is terminated. Each partial instance-hour consumed is billed as a full hour.
You are billed for the total number of document batches uploaded to your search domain. Uploaded documents are automatically indexed.
- $0.10 per 1,000 Batch Upload Requests (the maximum size for each batch is 5 MB)
When you make configuration changes to your index, for example by adding a field, you will need to rebuild the index. To do this, you use the AWS Management Console, command line tools, or APIs to issue an IndexDocuments request. The charge for this request is:
- $0.98 per GB of data stored in your search domain
Amazon CloudSearch may occasionally issue these calls for you. For example, as you add data to your domain, Amazon CloudSearch may proactively rebuild your index to improve query performance. You will not be charged in this case, and others, where you do not explicitly call IndexDocuments.
The pricing below is based on data transferred "in" and "out" of Amazon CloudSearch.
Data transferred between Amazon CloudSearch and AWS services in the same region is free.
Data transferred between Amazon CloudSearch and AWS services in different regions will be charged as Internet Data Transfer on both sides of the transfer.
For traffic sent between Amazon CloudSearch and Amazon EC2 instances in the same region, you are only charged for the Data Transfer in and out of the Amazon EC2 instances, and standard Amazon EC2 Regional Data Transfer charges apply. For additional information, see the EC2 pricing description.
You can always see the resources you're consuming in Amazon CloudSearch via the Account Activity page on the AWS website, the AWS Management Console, CloudSearch command line tools, or CloudSearch APIs.
Here's a cost example based on the IMDb movie data set. Keep in mind that many different factors can affect the scaling characteristics of a search domain and how much it costs to operate, including the actual values in each field you want to search, the indexing options you configure for your domain, and how much compute power it takes to process your queries.
In the IMDb data set, each movie is represented by a 1 KB document. A small search instance can hold 1 million 1 KB documents. To calculate out how much it will cost to run a search domain for this data, let's assume the following usage levels:
- 100,000 simple keyword search requests per day
- 50 batch uploads per day, where each batch adds 1,000 new movies (up to a total of 1 million movies)
- 4 IndexDocuments requests per month
At these usage levels, Amazon CloudSearch will automatically pick the Small search instance type to deploy the search domain. The monthly cost would be:
- Small Search Instance: 720 hrs (24 hrs per day x 30 days) x $0.10 per hour = $72.00 per month
- Batch Uploads: (50/1000) x $0.10 x 30 days = $0.15 per month
- IndexDocuments (100MB): 0.1GB (amount of data stored in your search domain) x $0.98 per GB x 4 calls per month = $0.39 per month
Note that when a search domain exceeds the capacity of a Small search instance, it will automatically be scaled up to a Large search instance and incur additional charges. You can monitor your usage and charges from the AWS Account Activity Page.