为什么数据工厂不允许我将数据从 OnPremise SQL Server 复制到云中的 Avro?

问题描述 投票:0回答:1

出现的消息如下: 错误代码 = AvroFailedToSerializeData,'类型 = Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,消息 = 序列化 Avro 数据失败。消息:名称“GENERIC_COLUMN”包含无效字符。。源=Microsoft.DataTransfer.Common,“Type=System.Runtime.Serialization.SerializationException”,消息=名称“GENERIC_COLUMN”包含无效字符。,源=Microsoft.Hadoop.Avro ,'

问题出现了,那些字符串格式的列无法迁移到 avro。 我已经完成了从本地 SQL Server 到云中 Avro 的迁移,我喜欢使用 Avro,因为我认为它在数据完整性方面比 csv 更一致,而 csv 可能较弱。 会有什么问题吗?

sql-server azure-data-factory avro on-premises-instances copy-data
1个回答
0
投票

序列化 Avro 数据失败。消息:名称“GENERIC_COLUMN”包含无效字符。

您遇到的问题是因为

GENERIC_COLUMN
名称可能包含一些无效字符,例如
-,* and special characters
。 Arro 文件仅允许在字段名称中包含 [A-Z,a-z,_]。

在映射中,您可以检查 Avro 文件的所有字段名称,如果包含特殊字符,请将其删除。

enter image description here

还要检查目标 Avro 文件的架构,如果命名不正确,您可以更正它。

© www.soinside.com 2019 - 2024. All rights reserved.