最近,用kettle把DB2的数据抽取到impala上,发现数据量异常,数据错开等情况。
检查发现DB2源表里的数据某个字段中内容含有英文的逗号,而impala上建的表TERMINATED BY ','
也用英文逗号分隔的,所以造成数据错乱;另外源表数据字段内容包含换行、回车符也会导致到impala数据分隔异常 数据错乱。
解决方案:针对分隔符,
导致的 ;可以换一种分隔符 |
,重新建表
CREATE TABLE DB_NAME.TB_NAME (
ROW_ID DECIMAL(20,0),
SLOGAN STRING,
CREATED_TIME TIMESTAMP
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY '|'
WITH SERDEPROPERTIES ('field.delim'