Azure data explorer 在ADX中更新策略查询和摄取重试
默认情况下,Kusto表上的更新策略是非事务性的。假设我在表MyTarget上定义了一个更新策略,在更新策略中将源定义为MySource。更新策略定义为事务性。已在表MySource上设置摄取。因此,数据将不断加载到MySource。现在假设某个摄取数据批加载到MySource,紧接着将触发更新策略中定义的查询。现在,假设由于内存问题等原因,此查询失败——即使加载到MySource的数据批也不会提交(因为更新策略是事务性的)。我听说在这种情况下,摄入将自动重新尝试。是这样吗?我还没有找到有关此重试的任何文档。无论如何——我的简单问题是——将尝试多少次重试,每次尝试后的间隔是多少?如果我是ADX集群的所有者,这些属性是可配置的吗(我指的是通过Azure提供的ADX集群) 是的,对于由于事务更新策略中的故障而失败的摄取,会自动重试 详细信息可在此处找到: 故障处理如下: 非事务性策略:故障被Kusto忽略。任何重试都是数据所有者的责任 事务策略:触发更新的原始摄取操作也将失败。不会使用新数据修改源表和数据库Azure data explorer 在ADX中更新策略查询和摄取重试,azure-data-explorer,Azure Data Explorer,默认情况下,Kusto表上的更新策略是非事务性的。假设我在表MyTarget上定义了一个更新策略,在更新策略中将源定义为MySource。更新策略定义为事务性。已在表MySource上设置摄取。因此,数据将不断加载到MySource。现在假设某个摄取数据批加载到MySource,紧接着将触发更新策略中定义的查询。现在,假设由于内存问题等原因,此查询失败——即使加载到MySource的数据批也不会提交(因为更新策略是事务性的)。我听说在这种情况下,摄入将自动重新尝试。是这样吗?我还没有找到有关此重
- 如果摄取方法是pull(Kusto的数据管理服务参与摄取过程),则整个摄取操作会自动重试,由Kusto的数据管理服务根据以下逻辑进行协调:
- 在达到最大重试时间(2天)和最大重试尝试次数(10次)之间的最早时间之前,将进行重试
- 退避时间从2分钟开始,呈指数增长(2->4->8->16…分钟)
- 在任何其他情况下,任何重试都是数据所有者的责任
是的,会自动重试由于事务更新策略失败而失败的摄取 详细信息可在此处找到: 故障处理如下: 非事务性策略:故障被Kusto忽略。任何重试都是数据所有者的责任 事务策略:触发更新的原始摄取操作也将失败。不会使用新数据修改源表和数据库
- 如果摄取方法是pull(Kusto的数据管理服务参与摄取过程),则整个摄取操作会自动重试,由Kusto的数据管理服务根据以下逻辑进行协调:
- 在达到最大重试时间(2天)和最大重试尝试次数(10次)之间的最早时间之前,将进行重试
- 退避时间从2分钟开始,呈指数增长(2->4->8->16…分钟)
- 在任何其他情况下,任何重试都是数据所有者的责任
所以事务性更新策略听起来是件好事,我想知道为什么默认值是非事务性的——在阅读了这个描述之后,任何明智的人都会选择事务性更新策略,否则就有可能丢失数据。所以事务性更新策略听起来是件好事,我想知道为什么默认值是非事务性的——在阅读了这个描述之后,任何明智的人都会选择事务性更新策略,否则就有可能丢失数据。