DataWorks百问百答10:如何处理编码格式设置问题?

本文涉及的产品
大数据开发治理平台DataWorks,Serverless资源组抵扣包300CU*H
简介: DataWorks百问百答10:如何处理编码格式设置问题?

     数据集成的同步任务设置编码格式后,如果数据中包含有表情符,在运行任务时可能出现同步失败且产生脏数据,或同步成功但数据乱码的问题。


(1)同步失败且产生脏数据
      数据集成任务运行失败,且因编码问题产生脏数据,类似报错日志如下所示。

016-11-18 14:50:50.766 [13350975-0-0-writer] ERROR StdoutPluginCollector - 脏数据:<br> 
{"exception":"Incorrect string value: '\\xF0\\x9F\\x98\\x82\\xE8\\xA2...' for column 'introduction' at row 1","record":[{"byteSize":8,"index":0,"rawData":9642,"type":"LONG"},
{"byteSize":33,"index":1,"rawData":"A公司出来的女汉子,扛得了箱子,招待好顾客![1](http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/pic/56134/cn_zh/149872864****/%E5%9B%BE%E7%89%877.png)
被自己感动cry","type":"STRING"},
{"byteSize":8,"index":4,"rawData":0,"type":"LONG"}],"type":"writer"}
2016-11-18 14:50:51.265 [13350975-0-0-writer] WARN  CommonRdbmsWriter$Task - 回滚此次写入, 采用每次写入一行方式提交:java.sql.BatchUpdateException: Incorrect string value: '\xF0\x9F\x88\xB6\xEF\xB8...' for column 'introduction' at row 1


对数据库进行编码格式设置或添加数据源时,编码未设置为utf8mb4,导致出现上述问题。仅utf8mb4编码支持同步表情符。


解决方法如下:

  • JDBC格式添加的数据源修改utf8mb4jdbc:mysql://xxx.x.x.x:3306/database?com.mysql.jdbc.faultInjection.serverCharsetIndex=45
  • 实例ID形式添加数据源:在数据库名后拼接,格式为:

  database?com.mysql.jdbc.faultInjection.serverCharsetIndex=45

  • 修改数据源的编码格式为utf8mb4。例如,在RDS控制台修改RDS的数据库编码格式。

注:
如果需要设置RDS数据源编码格式set names utf8mb4,在添加数据源时,必须使用无公网IP和连接串方式。

(2)同步成功但数据乱码**
        出现数据同步任务虽然成功,但数据乱码的情况有以下三种原因:

  • 源端的数据本身是乱码。
  • 数据库和客户端的编码不一样。
  • 浏览器编码不一样,导致预览失败或乱码。


解决方法如下:
      您可以针对产生乱码的不同原因,选择相应的解决方法:

  • 如果您的原始数据乱码,请首先处理好原始数据,再进行同步任务。
  • 如果数据库和客户端编码格式不一致,请先修改编码格式。
  • 如果浏览器编码和数据库或客户端编码格式不一致,请先统一编码格式,然后进行数据预览。

DataWorks百问百答历史记录请点击查看

更多DataWorks技术和产品信息,欢迎加入【DataWorks钉钉交流群】

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
一站式大数据开发治理平台DataWorks初级课程
DataWorks 从 2009 年开始,十ー年里一直支持阿里巴巴集团内部数据中台的建设,2019 年双 11 稳定支撑每日千万级的任务调度。每天阿里巴巴内部有数万名数据和算法工程师正在使用DataWorks,承了阿里巴巴 99%的据业务构建。本课程主要介绍了阿里巴巴大数据技术发展历程与 DataWorks 几大模块的基本能力。 课程目标 &nbsp;通过讲师的详细讲解与实际演示,学员可以一边学习一边进行实际操作,可以深入了解DataWorks各大模块的使用方式和具体功能,让学员对DataWorks数据集成、开发、分析、运维、安全、治理等方面有深刻的了解,加深对阿里云大数据产品体系的理解与认识。 适合人群 &nbsp;企业数据仓库开发人员 &nbsp;大数据平台开发人员 &nbsp;数据分析师 &nbsp;大数据运维人员 &nbsp;对于大数据平台、数据中台产品感兴趣的开发者
目录
相关文章
|
3月前
|
分布式计算 DataWorks API
DataWorks产品使用合集之如何设置把结果传入变量
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
DataWorks 监控 安全
DataWorks产品使用合集之怎么设置实时同步任务的速率和并发
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
分布式计算 DataWorks 监控
DataWorks产品使用合集之设置任务监控的步骤是什么
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
分布式计算 DataWorks 监控
DataWorks产品使用合集之怎么设置参数获取上个月最后一天
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
分布式计算 DataWorks 安全
DataWorks产品使用合集之任务自依赖该如何设置
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
DataWorks产品使用合集之任务自依赖该如何设置
|
3月前
|
分布式计算 DataWorks NoSQL
DataWorks产品使用合集之怎么设置在归并节点传递参数
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
SQL 分布式计算 DataWorks
DataWorks产品使用合集之如何设置时区
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
分布式计算 DataWorks 安全
DataWorks产品使用合集之调度任务时怎么指定时间函数格式
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
3月前
|
DataWorks Kubernetes 大数据
飞天大数据平台产品问题之DataWorks提供的商业化服务如何解决
飞天大数据平台产品问题之DataWorks提供的商业化服务如何解决
|
3月前
|
SQL DataWorks 安全
DataWorks产品使用合集之如何实现分钟级调度
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。

相关产品

  • 大数据开发治理平台 DataWorks