GCS Data Fusion数据管道运行失败,Spark写入BigQuery报错求助
GCS Data Fusion数据管道运行失败,Spark写入BigQuery报错求助
我最近搭了个数据管道,流程是从GCS Bucket拉取CSV文件,做了数据清洗后写入BigQuery表,但运行的时候直接栽在Spark环节了!更奇怪的是,日志里说数据已经加载到BigQuery,但我去目标表里一看啥都没有,实在搞不懂哪里出问题了,麻烦帮忙看看!
下面是我遇到的几个关键情况:
- Spark启动失败提示:程序直接报Apache Spark加载失败,核心错误指向BigQuery相关的操作环节,连初始化都没完成
- 详细错误日志:日志里出现
java.lang.RuntimeException异常,具体和BigQuery表写入操作相关,看起来像是无法确认目标表状态,或是权限层面出了问题 - 管道运行状态:整个管道标记为失败,但中间步骤显示“数据已加载到BigQuery”,可实际目标表完全没有数据
- BigQuery表属性:我检查了表的配置,是常规的表结构,表面上当前服务账号应该有读写权限,但可能哪里有遗漏?
有没有大佬能给点排查方向?比如:
- 是不是Spark和BigQuery的连接器版本不兼容?我用的是Data Fusion环境,会不会连接器版本和环境不匹配?
- 权限是不是真的配对了?Data Fusion用的服务账号,是不是同时拥有GCS读权限和BigQuery的表创建、数据写入权限?有没有跨服务的权限遗漏?
- 数据格式会不会有问题?CSV的字段类型和BigQuery表的字段是不是完全对应?比如有没有字符串存成数字的情况,导致写入中断?
- Spark写BigQuery的时候是不是要用到GCS临时目录?这个临时目录的权限有没有问题?会不会临时文件生成了但没法传到BQ?
- 有没有办法看到更完整的日志?现在的报错信息不够细,能不能找到具体是表不存在、分区配置不对,还是API调用被限制了?
备注:内容来源于stack exchange,提问作者WannaBeDeveloper
相关产品推荐
相关产品推荐

