在 Kusto DB 中更新插入

Upsert in Kusto DB

我有一个 ADF,它每天将 Kusto 函数的输出写入 Kusto Table。我需要每天将数据更新到 table。我没有找到更新 Kusto DB 中现有数据的方法。如果数据不存在,有什么方法可以插入行,否则通过 ADF 更新现有行?

设置或替换对我来说真的很昂贵,因为 table 包含大量数据

如果那不可能,我可以使用我拥有的日期时间戳截断最近 2 个月的数据并从函数重新加载它吗

ADX/Kusto is built for analytics, rather than OLTP, scenarios. Therefore, its design trade-offs favor very fast bulk Create (supporting high rates of inserts/appends of new records) and very fast bulk Read (supporting queries over large amounts of data). ADX/Kusto's support for Delete scenarios focuses on bulk-delete (mainly for retention period), and per-record deletion is not supported. Likewise, Updates of existing records is not supported in ADX/Kusto.

有几种处理“重复”数据的技术,它们可以让您简单地摄取新记录,而无需执行所谓的 upsert(这不是 [=35= 支持的操作) ],如上所述):https://docs.microsoft.com/en-us/azure/data-explorer/dealing-with-duplicates

您可以考虑的另一个选项是批量替换数据 - 通过标记和替换数据分片 (extents),使用范围级控制命令: