Hive根据Hive文档支持表中的unicode数据。
我创建了一个带有“string”数据类型的表,并将unicode数据加入其中,但当我说select * from <tablename>
时,我得到了垃圾值
create table unicode (data string);
load data local inpath 'unicode.txt' into table unicode;
以下是选择
的输出Les caract�res accentu�s (Fran�ais)
En donn�es nous avons confiance
Donn�es, donn�es, partout
et tous les noeuds �taient d�connect�
Donn�es, donn�es, partout
ni aucun bit � traiter
原创内容 Lescaractèresaccentués(Français)
En données nous avons confiance
Données, données, partout
et tous les noeuds étaient déconnecté
Données, données, partout
ni aucun bit à traiter
有人可以建议可能出现的问题吗?
答案 0 :(得分:0)
在你的情况下,Create table查询使用默认的hive serde创建一个表,即简单的lazy serde,这个serde不会处理unicode。
为了处理unicode,您需要使用textinput或rcserde等其他serdes定义表。
答案 1 :(得分:0)
将文本文件保存为UTF-8编码,然后将数据加载到配置单元表。不支持其他编码类型。