在数据工厂活动中将日期时间更改为 Unix 时间戳



我正在尝试将 Azure 表从一个存储帐户复制到另一个存储帐户。但是在执行此复制时,我想将列的日期时间值更改为 Unix 时间戳。

我正在使用 Azure 数据工厂复制活动。如果我在输出数据集中将列类型指定为 Int64 InitialDate则会收到cannot convert datetimeoffset to Int64的错误。

"activities": [
            {
                "type": "Copy",
                "typeProperties": {
                    "source": {
                        "type": "AzureTableSource"
                    },
                    "sink": {
                        "type": "AzureTableSink",
                        "azureTablePartitionKeyName": "PartitionKey",
                        "azureTableRowKeyName": "RowKey",
                        "writeBatchSize": 0,
                        "writeBatchTimeout": "00:00:00"
                    },
                    "translator": {
                        "type": "TabularTranslator",
                        "columnMappings": "PartitionKey:PartitionKey,RowKey:RowKey,Timestamp:Timestamp,InitialDate"
                    },
                    "parallelCopies": 32,
                    "cloudDataMovementUnits": 32
                },
                "inputs": [
                    {
                        "name": "InputDataset-3tk"
                    }
                ],
                "outputs": [
                    {
                        "name": "OutputDataset-3tk"
                    }
                ],
                "policy": {
                    "timeout": "1.00:00:00",
                    "concurrency": 1,
                    "executionPriorityOrder": "NewestFirst",
                    "style": "StartOfInterval",
                    "retry": 3,
                    "longRetry": 0,
                    "longRetryInterval": "00:00:00"
                },
                "scheduler": {
                    "frequency": "Day",
                    "interval": 1
                },
                "name": "Activity-0-Test->Test"
            }
        ]
无论如何我可以在

复制到输出数据集时将InitialDate列值更改为UnixTimestamp (Int64)

除了TabularTranslator,还有其他翻译吗?我在网络上找不到任何信息。

如果我

理解正确,您希望在使用 DataFactory 将数据从一个存储表复制到另一个存储表期间更改列值。根据我的经验,数据工厂复制活动目前不支持它。

在我的选择中,有一个解决方法是我们可以使用 Azure 计划的 Web 作业来执行此操作。在 Web 作业中,可以使用 Azure 存储 SDK 复制表记录和更改列值,然后插入到另一个表中。

相关内容

  • 没有找到相关文章

最新更新