Azure Cognitive Search: Indexer Definition for Incremental Enrichment and Caching

Incremental Enrichment and Caching in Azure Cognitive Search

Question

You are using Azure Cognitive Search and you add documents to your search index from a specific datasource.

For change tracking and eventual consistency with the datasource, you plan to enable incremental enrichment.

This way you will ensure the least amount of effort to track and respond to changes in your enrichment pipeline.

In this process, you also enable caching on the existing indexer.

Assuming that you have the indexer definition, review the JSON code snippet below and complete it by choosing the required and optional properties to modify the cache property in indexer definition.

(select two answer choices)

{ "name": "<Indexer Name>", "targetIndexName": "<Index Name>", "dataSourceName": "<Datasource Name>", "skillsetName": "<Skillset name>", "cache" : { ".............................................." : "<Connection String>", "..............................................": <true/false> }, "fieldMappings" : [], "outputFieldMappings": [], "parameters": [] } 

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

Correct Answers: B and C

Here is the completed code snippet

&lt;pre class="brush:java;"&gt;{

"name": "&amp;lt;Indexer Name&amp;gt;",

"targetIndexName": "&amp;lt;Index Name&amp;gt;",

"dataSourceName": "&amp;lt;Datasource Name&amp;gt;",

"skillsetName": "&amp;lt;Skillset name&amp;gt;",

"cache" : {

"storageConnectionString" : "&amp;lt;Storage Account Connection String&amp;gt;",

"enableReprocessing": true.

},

"fieldMappings" : [],

"outputFieldMappings": [],

"parameters": []

}

&lt;/pre&gt;Option A is incorrect because the disableCacheReprocessingChangeDetection property is set to true when you do not want to update an existing document.

This parameter is applicable to skillset.

Option B is correct because a storage account is used to retain the cache for the results of the skills updated.

The parameter value uses the connection string of the storage account.

This is a required parameter.

Option C is correct because enableReprocessing value is set to true for enabling incremental enrichment.

If you intend to disable incremental enrichment, set this value to false.

Option D is incorrect because the ignoreResetRequirementproperty value is set to true to allow the commit without a reset condition.

Reference:

To learn more about configuring cache for incremental enrichment, use the link given below:

To modify the cache property in the given indexer definition, you need to choose two properties from the options provided: disableCacheReprocessingChangeDetection, storageConnectionString, enableReprocessing, and ignoreResetRequirement.

The cache property in the Azure Cognitive Search indexer definition enables the caching of data for a certain amount of time, reducing the amount of data transferred from the data source to the search index.

The first property, disableCacheReprocessingChangeDetection, is an optional property that disables the detection of changes in the cache during reprocessing. If this property is set to true, the indexer will not detect changes to the cache during reprocessing, which may result in stale data being indexed.

The second property, storageConnectionString, is a required property that specifies the connection string for the cache storage account. The connection string identifies the storage account where the cache is stored.

The third property, enableReprocessing, is an optional property that enables the indexer to reprocess cached data if the cache is stale. If this property is set to true, the indexer will reprocess cached data if it is stale, which ensures that the search index remains up-to-date.

The fourth property, ignoreResetRequirement, is an optional property that ignores the requirement to reset the cache during reprocessing. If this property is set to true, the indexer will not reset the cache during reprocessing, which may result in stale data being indexed.

Therefore, to modify the cache property in the given indexer definition, you need to choose the storageConnectionString property as a required property and the disableCacheReprocessingChangeDetection property as an optional property, depending on your specific use case.