出现的消息如下: 错误代码 = 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 可能较弱。 会有什么问题吗?
序列化 Avro 数据失败。消息:名称“GENERIC_COLUMN”包含无效字符。
您遇到的问题是因为
GENERIC_COLUMN
名称可能包含一些无效字符,例如 -,* and special characters
。 Arro 文件仅允许在字段名称中包含 [A-Z,a-z,_]。
在映射中,您可以检查 Avro 文件的所有字段名称,如果包含特殊字符,请将其删除。
还要检查目标 Avro 文件的架构,如果命名不正确,您可以更正它。