Impala 不支持 Unicode 字符
Posted
技术标签:
【中文标题】Impala 不支持 Unicode 字符【英文标题】:Impala not supporting Unicode characters 【发布时间】:2019-11-06 14:41:06 【问题描述】:选择语句在 Impala 上返回错误字符。 第一张图片显示了 Hive 的结果,第二张图片显示了 Impala 的结果。它是在 Hive 中创建的托管表,源表是外部的
【问题讨论】:
您是否在查询中为该列的 impala 执行子字符串或任何字符串操作? @JNevill 不,我只是在执行 select * from table 一般来说 impala 可以 存储和显示 unicode,但它非常有限(这似乎有点愚蠢)。本质上,它将STRING
视为一个字节数组,因此它只识别 unicode 字符为 2、3 或 4 个字节的单个字节。因此,虽然它应该存储和显示 unicode(偶然),但在某些情况下它可能会自己吐出来。 Here 它说它会在以下期间发生故障:“字符串操作函数、比较运算符、ORDER BY 子句。分区键列中的值。”
@JNevill 有什么解决办法吗?
【参考方案1】:
我遇到了类似的问题,这个链接帮助了我 https://community.cloudera.com/t5/Support-Questions/Hive-UTF-8-problems/td-p/172558
在插入时使用类似的东西
insert into test select 'привет' from test limit 1;
【讨论】:
以上是关于Impala 不支持 Unicode 字符的主要内容,如果未能解决你的问题,请参考以下文章
系统使用(Python2不支持的) Unicode UTF-8 字符导致 ArcGIS 运行崩毁