hivecsv文件导入hive第一个字段内容为NULL
网友 CIO之家

从mysql中导出一张维度表,输出格式为csv

数据如下:

1       www.dianping.com        ^/shanghai$     上海首页        1
2       www.dianping.com        ^/shop/[0-9]*$  商户页  1


导入Hive

hive > load data local inpath '/data/test.txt' overwrite into table dpdim_page_name_id;

查询数据:

hive (bi)> select * from dpdim_page_name_id;                                                                   
OK
NULL    www.dianping.com        ^/shanghai$     上海首页        1
2       www.dianping.com        ^/shop/[0-9]*$  商户页  1


第一个字段内容为NULL,诡异,怀疑是UTF-8 BOM签名导致的
用UltraEdit打开文件,切换到十六进制编辑模式,文件头部有EF BB BF

果然!

使用UltraEdit,文件另存,格式选择为“UTF-8 无BOM”
重新导入,查询数据:
hive > select * from dpdim_page_name_id;                                                                   
OK
1       www.dianping.com        ^/shanghai$     上海首页        1
2       www.dianping.com        ^/shop/[0-9]*$  商户页  1


CIO之家 www.ciozj.com 公众号:imciow
关联的文档
也许您喜欢