SQL Server 并行插入 Azure Eventhub + Logic 应用



我正在使用 Azure 事件中心将 Azure 诊断数据流式传输到逻辑应用,以将其保存到 Azure SQL 表中以进行监视。这很好用。但是,有时会发生事件中心发送重复项的情况。为了避免重复插入,我使用带有 WHERE NOT EXISTS 子句的 INSERT INTO 语句。但是,很少有人我仍然得到双排。逻辑应用程序并行运行,所以我想这是导致问题的原因。我认为有时它会在完全相同的时间执行相同的插入,这会导致 WHERE NOT EXISTS 子句不起作用。

有谁知道解决方法? 我宁愿不执行 DELETE 并从之后删除重复的行,因为我想在表上放置一个唯一的键约束。

你必须在你的函数中进行一些幂等性检查。发生缩放时,新的缩放单元将接管分区的处理,从而重新处理相同的消息。

我不知道服务总线是否可以将这些消息排队。 建议向事件中心团队报告。

最新更新