Configure Azure Cognitive Search for xConnect

Current version: 9.0
Caution

Azure Cognitive Search will be discontinued in the future and Sitecore will no longer provide support for this service in future releases.

Azure Cognitive Search is the default search provider when you install xConnect using the Sitecore Azure Toolkit.

To configure Azure Cognitive Search for xConnect:

  1. In the xconnect\App_data\config\sitecore\CollectionSearch folder, remove the .disabled extension of the sc.Xdb.Collection.IndexReader.AzureSearch.xml.disabled file. This enables the configuration in the file.

  2. In the xconnect\App_data\config\sitecore\CollectionSearch folder, add the .disabled extension to these files:

    • sc.Xdb.Collection.IndexReader.SOLR.xml

    • sc.Xdb.Collection.WebClient.SOLR.xml

    This disables the configuration in the files.

  3. In the xconnect\App_data\jobs\continuos\IndexWorker\App_data\config\sitecore folder, remove the .disabled extension from these files:

    • \SearchIndexer\sc.Xdb.Collection.IndexWriter.AzureSearch.xml.disabled

    • \CollectionSearch\sc.Xdb.Collection.IndexReader.AzureSearch.xml.disabled

    This enables the configuration in the files.

  4. Note

    If you use Sitecore XP 9.0.2, or later, and use more than one replica:

    In the \SearchIndexer\sc.Xdb.Collection.IndexWriter.AzureSearch.xml file, enable the DataReplicationTimeoutMilliseconds setting.

  5. In the xconnect\App_data\jobs\continuos\IndexWorker\App_data\config\sitecore folder, add the .disabled extension to these files:

    • \CollectionSearch\sc.Xdb.Collection.IndexReader.SOLR.xml

    • \CollectionSearch\sc.Xdb.Collection.WebClient.SOLR.xml

    • \SearchIndexer\sc.Xdb.Collection.IndexWriter.SOLR.xml

    This disables the configuration in the files.

  6. In the connection string files xconnect\App_Config\ConnectionStrings.config and xconnect\App_data\jobs\continuous\IndexWorker\App_config\ConnectionStrings.config, uncomment and update the Azure Cognitive Search connection string. The name of this string is collection.search:

    RequestResponse
    <add name="collection.search" connectionString="serviceUrl=https://[service].search.windows.net/;indexName=[index name];apiKey=[API Key]"/>
    Note

    Azure Cognitive Search for xConnect do not support geo-replicated scenarios, so you cannot specify multiple instances in the collection.search connection string."

Do you have some feedback for us?

If you have suggestions for improving this article,