Deployment Regions and Strategies
When creating a Coveo organization, you select a primary deployment region. This is the physical center of your organization, which hosts all services and data required for your organization to function. Coveo also offers the possibility of deploying to additional satellite regions, which duplicate only the contents required to perform search requests. As such, satellite regions don’t replace your primary region, but can respond to end user queries to improve query time.
This article provides details on primary and satellite deployment regions, and explains how to leverage them to implement two deployment strategies:
Data residency, where you only deploy to a primary region in order to have all of your data reside in the target region.
Multi-region deployments, where you deploy to satellite regions in addition to your primary region to improve search response times for international users.
The following table shows the primary and satellite deployment regions currently offered by Coveo.
|Primary region||Satellite region|
For pricing or information about additional regions that may be added in the future, contact Coveo Sales.
Understanding Primary and Satellite Regions
Your primary deployment region holds all of your Coveo data and is where your main organization processes take place. Satellite regions only contain duplicates of the content and services required for your end users to perform queries, namely your index, ML models, and the Search API. The Coveo Cloud indexing pipeline, Usage Analytics service, and main Platform services remain exclusively in the primary region.
|Primary region||Satellite regions|
Complete Coveo organization:
Only what's required to handle search requests:
Data residency is a deployment strategy that aims at storing and processing all your Coveo data in a single region. A typical use case is companies based outside of the United States that don’t want their data to be stored in the United States. To handle such scenarios, select another primary deployment region, such as Ireland or Australia, as your primary deployment region, with no satellite deployment.
Data Residency Configuration
Assuming you have contacted Coveo Sales and have completed the administrative tasks required to deploy exclusively in your target primary region, the technical configuration is almost seamless. You only need to use the dedicated domain name in your Coveo API requests and when navigating to the Administration Console.
When using the Push API:
When using all other Coveo APIs, and when navigating to the Administration Console:
https://platform-eu.cloud.coveo.com/rest/search rather than
Coveo.SearchEndpoint.configureCloudV2Endpoint(<YOUR_COVEO_CLOUD_ORGANIZATION_ID>, <YOUR_SEARCH_TOKEN>, "https://platform-eu.cloud.coveo.com/rest/search");
The goal of multi-region deployments is to reduce query times for international end users by deploying satellite regions. Rather than having all end user queries travel to and from your primary deployment region, the service automatically routes them to your closest deployment2, primary or satellite, which can dramatically reduce query response time. Additionally, if a satellite deployment encounters an issue, the service routes queries to your primary deployment region. This increases the overall resiliency of your search solution.
2: You can’t manually force queries into one particular region.
Search Response Time Examples
While the following are real-life examples, they’re merely examples, meant to illustrate the logic of multi-region deployments. Exact figures vary significantly from organization to organization, from query to query, and from caching along the Internet.
You have no satellite deployment. When an end user located in Paris makes a query, this query goes to your primary and only deployment, in the US East Region. The results then travel back to Paris. The query suggestions reach the end user after a total of 283 milliseconds, and the results after a total of 441 milliseconds.
You now add a satellite deployment in Ireland. When an end user located in Paris makes a query, this query is now automatically routed to your Ireland deployment. The query suggestions reach the end user after a total of 102 milliseconds, and the results after a total of 168 milliseconds.
The following table summarizes the above scenarios:
Before After Query time (ms) 441 168 Query suggest time (ms) 283 102
Your organization is currently deployed in a single region, namely US East. You then decide to also deploy it in the US West and Ireland regions, and compare the query times before and after, from different regions across the world:
Query origin Query time before (ms) Query time after (ms) US West 388 188 US Central 164 164 US East 110 110 Brazil 645 637 France 441 168 India 1042 766 Australia 1098 874 Japan 855 565
Assuming you have contacted Coveo Sales and have taken care of the administrative tasks required to deploy your organization over satellite regions, the technical configuration is almost seamless. You only need to use a dedicated domain name in your Coveo Search API requests. Requests to other Coveo APIs don’t change.
Coveo will provide you with a custom domain name to use in your Search API requests instead of
Your primary deployment region is US East, and you have satellite regions in US West and Ireland. Coveo provides you with the following custom domain name when making your Search API requests:
https://mycompany.cloud.coveo.com/rest/search rather than
Coveo.SearchEndpoint.configureCloudV2Endpoint(<YOUR_COVEO_CLOUD_ORGANIZATION_ID>, <YOUR_SEARCH_TOKEN>, "https://mycompany.cloud.coveo.com/rest/search");