Table 存储仅以字符串格式显示数据

Table storage showing data in only string format

我正在使用 ADF 管道将数据从数据湖复制到 blob 存储,然后从 blob 存储复制到 table 存储。

如下所示,ADF 数据流接收器中的列类型 - Blob 存储(整数、字符串、时间戳):

这里是复制数据中的Mapping设置activity:

在检查 table 存储中的输出时,我看到所有列都是字符串类型:

为什么table storage 以字符串值的形式保存数据?我如何解决 table 存储中的这个问题,以便它接受正确类型的列(整数、字符串、时间戳)?请告诉我。谢谢!

通常情况下,当从数据工厂的blob存储中加载数据时,blob文件中默认的数据类型都是字符串,数据工厂会自动帮你将数据类型转换为下沉。

但它也不能满足我们所有的要求。

我测试了从 Blob 复制数据到 Table 存储,发现: 如果我们不在 Source 中手动指定数据类型,在管道执行后,所有数据类型都将是接收器中的字符串(Table 存储).

例如,这是我的源 blob 文件:

如果我不更改源数据类型,似乎在Sink中一切正常table:

但是管道执行后,table存储的数据类型都是String:

如果我们手动更改 Source blob 中的数据类型,就可以了!

另外一个问题,从你的截图看有点迷惑,好像是UIMapping Data Flow Sink,但是Mapping Data Flow不支持TableStorage as Sink。

希望对您有所帮助。

终于解决了问题 - 我在 Blob 存储中使用 DelimitedText 格式。转换为 Parquet 格式后,我可以看到数据以正确的类型写入 table 存储。