Azure搜索索引器可以覆盖通过API发布的更新吗?

时间:2018-12-19 08:58:17

标签: c# azure azure-search

我正在编写一个应用程序,在该应用程序中,我们通过调用带有一个元素的批处理的Azure搜索API来同步数据更新(如this answer中所述)。作为备份,我们有一个search indexer,每小时运行一次。这样,如果通过API更新索引失败,或者如果我们忘记在代码中触发它,则更改最终将同步到搜索索引。

我的问题是:搜索索引器是否有可能像下面的情况一样覆盖API更新?

  1. 搜索索引器从数据库中复制一行
  2. 应用程序更新数据库中的同一行,然后通过API调用将其同步到搜索索引中
  3. 搜索索引器根据数据的过时副本更新索引中的文档

1 个答案:

答案 0 :(得分:1)

是的,在索引器更新文档和API调用更新文档之间肯定存在竞争条件。您可以通过延迟API更新直到索引器运行完毕之后,或仅使用一种机制(索引器 API)来减轻这种情况。