成功解决DataX从Hive导出Oracle的数据乱码问题!

前言

大数据与 RDBMS 之间的数据导入和导出都是企业日常数据处理中常见的一环,该环节一般称为 e-t-lextract-transform-load。市面上可用的 etl 工具和框架很多,如来自于传统数仓和 BI 圈的 kettle/informatica/datastage, 来自于 hadoop 生态圈的 sqoop/datax,抑或使用计算引擎 spark/presto/flink 直接编写代码完成 etl 作业。
在这里跟大家分享一次使用 dataxhive 导出数据到 oracle 的作业的时候,出现了两边数据的编码集不一致导致的乱码问题,希望对大家遇到相同的问题时有所帮忙。

问题背景

最近接到业务人员反馈导出 oracle 数据库中的数据和 hive 中的数据不一致,hive 中明明是 "• " ,但是导出到 Oracle 后却变成了 “?”,于是,当我看到这个问题的时候,我的头脑里也出现了很多问号?
思考片刻后,于是找到 DBA 询问 oracle 数据库的编码集是什么,回答是 ZHS16GBK ,而 hive 中的编码集是 UTF-8,这就很明了了,确定是编码集不一致导致的乱码问题了。
那么如何

猜你喜欢

转载自blog.csdn.net/u011109589/article/details/132225254