You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Microsoft Fabric中Data Factory映射数据截断警告及Float类型兼容问题

问题分析与解决方案:Fabric Data Factory数据类型不兼容错误

核心问题原因

1. 源数据类型推断偏差

虽然你处理的是*.txt.gz文本压缩文件,但Data Factory自动推断列类型时,如果PACKAGE_SIZE列存在非标准浮点格式(比如带千分位逗号、N/A这类非数值内容),会把该列识别为字符串类型(对应报错里的Parquet物理类型BYTE_ARRAY、逻辑类型UTF8)。此时目标设为FLOAT,自然会触发类型不兼容错误。同理,日期列如果格式不标准(比如MM/DD/YYYY而非ISO格式),也会被推断为字符串,无法直接映射到Datetime2。

2. 文件格式配置未明确指定

如果复制活动的源数据集未明确设置为Delimited Text格式,且未指定压缩类型为Gzip,Data Factory可能误判文件格式(比如容器内有其他Parquet文件时),用Parquet的解析逻辑处理文本数据,导致所有列被识别为字符串类型,和目标的数值、日期类型不匹配。

3. 隐式转换的限制

Fabric数据仓库确实支持FLOAT和Datetime2,但Data Factory复制活动的默认规则是:源和目标类型必须严格匹配,或者开启自动转换配置。如果源被推断为字符串,默认不会自动转成浮点或日期类型,必须显式配置转换规则。

排查与解决步骤

  • 明确源文件格式配置:在复制活动的源数据集里,手动设置文件类型为Delimited Text,压缩类型选Gzip,同时指定正确的列分隔符、是否包含标题行,避免系统自动推断出错。
  • 手动指定源列类型:在映射页面,不要依赖自动映射,手动给源列设置对应类型——比如PACKAGE_SIZE设为Float,日期列设为Datetime并匹配源数据的格式(比如MM/dd/yyyy HH:mm:ss)。
  • 检查源数据质量:抽样解压查看*.txt.gz文件,确认PACKAGE_SIZE是否有非数值内容、日期列格式是否统一。如果有异常值,先用数据流活动做清洗(比如过滤替换异常值),再复制到数据仓库。
  • 开启自动类型转换(可选):在复制活动的设置页面,找到“自动类型转换”开关并开启,允许系统尝试自动转换类型,但要注意测试验证,避免精度损失或转换错误。

内容的提问来源于stack exchange,提问作者SRP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 11:22:40