是否可以通过Azure搜索将(使用API​​)和Pull(使用索引器)数据推送到同一索引中?

时间:2017-06-07 16:48:59

标签: azure azure-sql-database azure-search azure-search-.net-sdk

我在Azure搜索中有一个索引叫做酒店。

我在Azure SQL中有一个酒店表,它具有与Azure搜索中找到的酒店索引副本相同的模式。

我从后端推送到Azure SQL表和Azure搜索创建/更新/删除。

在一个场景中,我的数据被推送到Azure SQL但未能推送到Azure搜索是否可以让我的Azure SQL Hotels表成为索引器,这样索引器就可以将数据同步到我的Azure搜索索引(酒店)那个未能从我的后端推出来的?

1 个答案:

答案 0 :(得分:0)

是的,您既可以混合推送也可以同时使用多个拉动索引器来定位相同的索引。我们看到这种情况经常在部分数据在一个数据源中而在另一个数据源中时完成,其中索引是它们收敛的点,由它们的密钥协调。

您所描述的模式并不常见,但一般来说它应该有效。您必须考虑您的写入与索引器写入冲突的情况,并确保您在发生时所做的写入最终获胜。此外,如果您沿着此路径走下去,请确保配置更改检测(如果删除行,则删除检测)策略,以便我们逐步从SQL编制索引,并且不会在每次运行时准备好所有内容。

如果您担心丢失写入,则另一种方法是将所有写入推送到队列中,然后从队列中拉出并进入Azure搜索。这样你就有了一个写入流而不是两个。