You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于UnixTime列对Azure Data Explorer外部表按日分区?

基于Unix时间戳(long型)实现Azure Data Explorer外部表按日分区

Azure Data Explorer外部表的分区表达式仅支持有限的确定性函数,你尝试的round()、datetime_add()不在允许范围内,但可以通过以下方式实现需求:

直接使用datetime_from_unixtime()将long型Unix时间戳转换为datetime,再结合startofday()生成日边界分区键,示例语法如下:

.create external table extTbl (
    UnixTime: long,
    Data: dynamic
)
kind = blob
partition by (DatePartition:datetime = startofday(datetime_from_unixtime(UnixTime)))
// 补充存储连接、路径模式等配置,例如:
storage account_name = "yourstorageaccount"
container = "yourcontainer"
path_format = "data/datepartition={DatePartition:yyyy-MM-dd}/{*}"
...

关键说明:

  • 分区键可以自定义名称(示例中用DatePartition),无需与原表列名一致
  • 如果你的Unix时间戳是毫秒级(而非秒级),需要先除以1000:datetime_from_unixtime(UnixTime / 1000)
  • 路径模式必须与分区键匹配,示例中用{DatePartition:yyyy-MM-dd}生成按年月日格式化的分区路径,确保数据文件能被正确映射到分区

内容的提问来源于stack exchange,提问作者Peter Vandivier

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 19:51:03