1、问题场景
使用datax从hive同步数据到orace。采用了hdfsreader和oraclewriter。
当hdfs上的数据的某一个列是以“双引号”开头的,会导致“双引号”后的所有数据被当做一个长字符串,进而导致同步数据失败。
2、问题定位
翻看datax的hdfsreader部分的源码,发现datax在读取数据时采用了com.csvreader.CsvReader这个工具。
3、测试com.csvreader.CsvReader
(1)maven依赖
<dependency>
<groupId>net.sourceforge.javacsv</groupId>
<artifactId>javacsv</artifactId>
<version>2.0</version>
</dependency>