开发者社区 > 大数据与机器学习 > 大数据开发治理DataWorks > 正文

DataWorks离线同步脏数据如何排查和定位?

DataWorks离线同步脏数据如何排查和定位?

展开
收起
wenti 2023-01-16 11:56:31 242 0
3 条回答
写回答
取消 提交回答
  • 报错现象:报错现象:{"message":"写入 ODPS 目的表时遇到了脏数据: 第[3]个字段的数据出现错误,请检查该数据并作出修改 或者您可以增大阀值,忽略这条记录.","record":[{"byteSize":0,"index":0,"type":"DATE"},{"byteSize":0,"index":1,"type":"DATE"},{"byteSize":1,"index":2,"rawData":0,"type":"LONG"},{"byteSize":0,"index":3,"type":"STRING"},{"byteSize":1,"index":4,"rawData":0,"type":"LONG"},{"byteSize":0,"index":5,"type":"STRING"},{"byteSize":0,"index":6,"type":"STRING"}。如何处理:该日志中可以看出脏数据的字段,第三个字段异常。脏数据是writer端报的,要检查下writer端的建表语句。odps支持的数据类型与mysql大不相同,虽然可以用varchar等类型,但是通过datax实际写入是不能识别,即mysql varchar类型不能写入odps varchar类型,需要使用string类型。数据同步原则:来源端数据源的数据要能写入目的端数据源(来源端和目的端类型需要匹配,字段定义的大小需要匹配),即源端是long、varchar 、double等类型的数据,目的端均可用string、text等大范围类型接纳。脏数据报错不清晰时,需要复制出打印出的脏数据的一整条,观察其中的数据,和目的端数据类型比较,看哪一条或哪一些不合规范。比如: {"byteSize":28,"index":25,"rawData":"ohOM71vdGKqXOqtmtriUs5QqJsf4","type":"STRING"} byteSize:字节数;index:25,第26个字段;rawData:具体值(即value);type:数据类型。——该回答整理自钉群“DataWorks交流群(答疑@机器人)“

    2023-01-16 17:06:15
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    DataWorks离线同步常见问题官网列举很多,可以参考文档方便排查

    2023-01-16 13:08:23
    赞同 展开评论 打赏
  • 我下面列举一下建议 1. 首先,检查数据源是否正常,确保数据源中的数据是有效的。 2. 检查DataWorks中的同步任务,确保任务的配置是正确的。 3. 检查DataWorks中的同步日志,确保同步任务是正常运行的。 4. 检查DataWorks中的数据质量报告,确保数据质量是正常的。 5. 检查DataWorks中的数据清洗任务,确保数据清洗任务是正确的。 6. 检查DataWorks中的数据校验任务,确保数据校验任务是正确的。 7. 检查DataWorks中的数据转换任务,确保数据转换任务是正确的。 8. 检查DataWorks中的数据报表,确保数据报表是正确的。 9. 检查DataWorks中的数据分析任务,确保数据分析任务是正确的。 10. 检查DataWorks中的数据可视化任务,确保数据可视化任务是正确的。

    2023-01-16 12:50:25
    赞同 展开评论 打赏

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

相关产品

  • 大数据开发治理平台 DataWorks
  • 热门讨论

    热门文章

    相关电子书

    更多
    低代码开发师(初级)实战教程 立即下载
    冬季实战营第三期:MySQL数据库进阶实战 立即下载
    阿里巴巴DevOps 最佳实践手册 立即下载