【问题标题】:Hive Supporting Unicode CharactersHive 支持 Unicode 字符
【发布时间】:2016-10-08 21:54:11
【问题描述】:

是否有任何 Serde 可用于支持带有 Unicode 字符的配置单元表。我们可能有 UTF-8、UTF-18 和 UTF-32 的文件。这没什么,但我们正在寻找支持不同的语言,如在 hive 表中的日语、中文。我们应该能够将不同语言的数据加载到 hive 表中

【问题讨论】:

    标签: hive


    【解决方案1】:

    Hive 只能读写 UTF-8 文本文件。
    对于其他字符集,应转换为UTF-8。
    转换语法为

    hive> CREATE TABLE mytable(name, datatype) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe' WITH SERDEPROPERTIES("serialization.encoding"='FORMAT');
    

    可以使用 iconv 完成转换,但它只支持小于 16G 的文件。 语法:

    >iconv -f encoding -t encoding inputfile
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-04
      • 2017-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-13
      相关资源
      最近更新 更多