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

使用ADF将Blob中CSV复制到Databricks Delta表时遇非Delta格式错误

ADF复制CSV到Delta Lake报错“非Delta格式”的解决办法

问题背景

使用Azure Data Factory复制活动,将Azure Blob存储的CSV文件写入Databricks Delta Lake表时,系统报错提示目标表并非Delta格式,但在Databricks中确认该表确实为Delta格式(表详情显示Provider为delta)。源配置指向Blob存储的CSV文件路径,接收器配置选择Databricks链接服务并指定目标数据库和表名。

排查与修复步骤

1. 校验接收器配置准确性

  • 核对ADF接收器中填写的数据库名和表名,确保与Databricks中Delta表的名称完全一致(注意部分环境下表名区分大小写)。
  • 若使用路径模式而非直接选表,必须确保路径指向Delta表的根目录(即包含_delta_log文件夹的目录),不能指向子文件夹或单独的数据文件。

2. 修复Delta表元数据

  • 在Databricks执行刷新表命令同步元数据:
    REFRESH TABLE <目标表名>;
    
  • 执行历史查询检查日志完整性:
    DESCRIBE HISTORY <目标表名>;
    
    若发现日志损坏,可尝试执行OPTIMIZE <目标表名>整理数据,或在确认无数据风险的前提下用VACUUM <目标表名>清理无效日志文件。

3. 检查ADF链接服务权限与兼容性

  • 确认ADF连接Databricks的服务主体,拥有目标Delta表的写入权限,同时具备底层存储(Blob/ADLS)的读写权限。
  • 验证链接服务使用的Databricks集群或SQL仓库处于正常运行状态,且Runtime版本不低于10.0(确保兼容最新Delta Lake特性)。

4. 确认Delta表类型与存储完整性

  • 在Databricks执行命令查看表详情:
    DESCRIBE EXTENDED <目标表名>;
    
    确认Provider字段值为delta,验证表的Delta属性。
  • 若为外部Delta表,检查底层存储路径下的_delta_log文件夹是否存在且未被篡改,该文件夹是Delta表的核心标识。

快速验证方案

  • 先在Databricks中手动插入一条测试数据到目标表,确认表可正常写入。
  • 简化ADF复制任务:使用单个小体积CSV文件测试,排除数据格式或文件大小导致的异常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 17:45:15