Kettle导入数据到Hive 出现多余的几行全部是null值的情况
Posted Neo的技术点滴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kettle导入数据到Hive 出现多余的几行全部是null值的情况相关的知识,希望对你有一定的参考价值。
Kylin构建Cube的时候老是报错,说是有空值,其实源数据中是不存在空值的。为什么建Cube的时候会有呢?
执行完毕后使用Hive查询发现多了好几行全部是null的行。
这在源数据中是不存在的。分析可能的原因是文本类型中存在特殊字符,例如 Tab,回车,换行字符。所以在抽取源数据中增加过滤。
Sql中的特殊字符
char(9) 水平制表符
char(10)换行键
char(13)回车键
原来的SQL
select FItemID,FParentID ,FNumber ,FName from 表名
换成
select FItemID,FParentID ,replace(replace(replace(FNumber,char(9),\'\'),char(10),\'\'),char(13),\'\') FNumber ,replace(replace(replace(FName,char(9),\'\'),char(10),\'\'),char(13),\'\') FName from 表名
修改完毕后重新抽取数据,建模OK。
以上是关于Kettle导入数据到Hive 出现多余的几行全部是null值的情况的主要内容,如果未能解决你的问题,请参考以下文章