我正在尝试建立一个简单的数据工厂管道,以将Azure表存储复制到Cosmos DB。 Azure表存储具有系统托管字段“时间戳记”。当流运行并且用数据填充Cosmos db时,Timestamp始终为“ Timestamp”:“ 1970-01-01T00:00:00Z”。似乎它没有正确进入Cosmos DB。
如何复制:创建一个Azure表,添加一些条目。创建Cosmos数据库实例和一个新集合。创建Dat Factory流程。请注意导出时时间戳的外观。
我尝试将Timestamp数据类型从DateTime更改为DateTimeOffset并将其导出为字符串。我也尝试指定日期格式。结果是一样的。
我怀疑Timestamp是Cosmos DB中的保留字,并且以某种方式无法插入正确的值。
答案 0 :(得分:1)
我转载了您的问题。我试图添加属性time
并将其值设置为与Timestamp
相同。它可以正确导入到cosmos db中。
所以,我认为这与字段名称有关,与数据类型或数据格式无关。但是,我尝试指定目标列字段名称timestamp
而不是Timestamp
,然后它不起作用。
根据此文档,_ts
由cosmos db自动生成,它是代表自1970年1月1日起经过的秒数的数字。它记录last updated timestamp of the resource的含义相同作为Azure表存储中的时间戳。可以将其转换为UnixDateTimeConverter
类。因此,您可以通过_ts
字段跟踪日期日志。
如果您想保留时间戳,则可以添加与时间戳相同的属性,然后将其导入cosmos db。
希望它对您有帮助。