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

Synapse Analytics加载Parquet失败:INT字段被映射为UTF8报错

Synapse管道PolyBase/COPY加载Parquet报ClassCastException故障

场景说明

现有数据同步链路为从本地部署的Oracle数据库提取数据存入Synapse专用池,已搭建Synapse管道实现两段式数据同步:

  • 第一阶段:通过复制活动将Oracle数据以Parquet格式写入数据湖
  • 第二阶段:通过第二个复制任务将生成的Parquet文件导入Synapse专用池

故障表现

Oracle侧数据抽取使用动态生成的查询语句,查询包含2个运行时生成的硬编码INT值。当前查询可正常执行,Parquet文件也可正常生成,但使用PolyBase或COPY命令将文件导入Synapse时会触发如下报错:

"errorCode": "2200",
"message": "ErrorCode=UserErrorSqlDWCopyCommandError,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=SQL DW Copy Command operation failed with error 'HdfsBridge::recordReaderFillBuffer - Unexpected error encountered filling record reader buffer: ClassCastException: ',Source=Microsoft.DataTransfer.ClientLibrary,''Type=System.Data.SqlClient.SqlException,Message=HdfsBridge::recordReaderFillBuffer - Unexpected error encountered filling record reader buffer: ClassCastException: ,Source=.Net SqlClient Data Provider,SqlErrorNumber=106000,Class=16,ErrorCode=-2146232060,State=1,Errors=[{Class=16,Number=106000,State=1,Message=HdfsBridge::recordReaderFillBuffer - Unexpected error encountered filling record reader buffer: ClassCastException: ,},],'"

切换为Bulk insert模式可正常完成导入,但该模式处理大数据量时效率较低,不符合使用需求。

排查过程

  • 复制活动的字段映射是基于目标数据库表定义动态生成的,通过创建独立复制任务做导入映射排查时,发现上述2个INT列在Parquet源侧被映射为UTF8类型,而接收器表对应字段类型为INT32
  • 排除这两列后复制任务可正常执行,判定故障根因为复制活动无法在PolyBase/COPY模式下隐式将字符串类型转换为整数

字段映射异常情况如下:
字段映射异常截图

生成Parquet文件的Oracle源查询中已经将这2个列显式转换为INT类型,查询语句如下:

SELECT  t.* 
    ,   CAST(419 AS INT) AS "Execution_id"
    ,   CAST(4832 AS INT) AS "Task_id"
    ,   TO_DATE('2022-07-05 14:40:34', 'YYYY-MM-DD HH24:MI:SS') AS "ProcessedDTS"
    ,   t.DEMUTDT AS "EffectiveDTS" 
FROM    CBO.DRKASTR t
WHERE   DEMUTDT >= TO_DATE('2022-07-05 13:37:35', 'YYYY-MM-DD HH24:MI:SS');

目前已尝试在Oracle到Parquet的复制环节显式将两列映射为INT类型,仍无法解决问题。

待解决问题

如何配置才能避免这两列被错误识别为字符串类型,保障PolyBase/COPY命令的加载流程正常运行?


内容的提问来源于stack exchange,提问作者Koen van Wielink

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 11:24:38