Azure 搜索:更新一批文档的最佳方式是什么

Azure Search: What is the best way to update a batch of documents

我们需要根据 Azure 搜索索引中的某些条件更新一批文档。对于当前的实现,我们能想到的唯一方法是:

  1. 搜索所需文件(例如类别 = 1)

  2. 使用结果的文档 ID 创建新文档

  3. 在新文档中更新必填字段(例如价格 = 价格*1.1)

  4. 使用合并更新新创建的文档来更新现有文档。

上面的代码看起来就像我们回到了 1960 年代,或者我们的大脑中有一些螺丝松动了!这是在 Azure 搜索中实现此目标的唯一方法吗?

我们正在使用 .NET SDK。

您更新与查询匹配的文档的算法确实正确。一个注意事项:使用过滤器而不是全文搜索 - 它会更有效率。

Azure 搜索是一个搜索引擎,而不是通用数据库,因此它不直接支持 SQL 的 UPDATE ... WHERE 模式。