gpt4 book ai didi

Azure 流分析将 int64 输出为 int32

转载 作者:行者123 更新时间:2023-12-02 07:07:56 25 4
gpt4 key购买 nike

我有一个流分析作业,可将时间戳转换为自纪元以来的毫秒数。

为此,我使用了一个返回 bigint 的 JavaScript 函数,代码如下:

new Date(date).getTime()

当我在 Azure 门户中测试此作业时,我得到了正确的结果,例如:2018-08-29T13:01:54.0000000Z 变为 1535547714000:

enter image description here

但是当我运行该作业并开始将其输出存储在 Azure 表中时,1535547714000 变为 -2050577968

我注意到,如果我将 bigint 1535547714000 转换为 int,我会得到 -2050577968。所以我检查了列的类型,奇怪的是,它是 Int64:

enter image description here

TL;博士:该作业输出一个 bigint,列类型为 bigint Int64 但不知何故,在两者之间的某个地方,该值似乎转换为 int

我该如何解决这个问题?

最佳答案

鲁道夫。如果要将数据传输到Azure表存储中,则必须遵循它的规则。

基于doc ,Azure 表存储仅支持 int32int64 类型,不支持 bigint 类型。所以,实际上并没有什么神秘的机制来转换你的数据类型,只是当bigint数据进入表时,它被转换为相应的Int64类型。但是,它应该为 1535547714000,无法转换为 int。您可以提交 feedback到 Azure 发布此问题。

作为解决方法,您可以尝试在 Azure 表存储 Azure 触发器函数中获取数据并将其转换为 Int64。请引用这个doc .

希望对您有帮助。

关于Azure 流分析将 int64 输出为 int32,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52092558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com