zoukankan      html  css  js  c++  java
  • 【原创】大叔经验分享(34)hive中文注释乱码

    在hive中查看表结构时中文注释乱码,分为两种情况,一种是desc $table,一种是show create table $table

    1 数据库字符集

    检查

    mysql> show variables like '%char%';
    mysql> show create table COLUMNS_V2;
    mysql> show create table TABLE_PARAMS;

    修改

    mysql> alter database hive character set latin1;
    mysql> alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;
    mysql> alter table TABLE_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;

    这时desc $table应该可以正常显示中文了,但是show create table $table还是乱码,这时有两种选择:

    2.1 继续使用hive

    修改 org.apache.hadoop.hive.ql.exec.DDLTask,

    outStream.writeBytes(createTab_stmt.toString());
    ->
    outStream.write(createTab_stmt.toString().getBytes(“UTF-8”));

    outStream.writeBytes(createTab_stmt.render());
    ->
    outStream.write(createTab_stmt.render().getBytes(“UTF-8”));

    并重新打包替换hive-exec.jar,改动太大不建议

    2.2 使用spark-sql或者beeline连接spark thrift server

  • 相关阅读:
    shell编程——循环执行
    ubuntu 设置管理 集锦
    27. 计算FPS
    29 GameProject4(+GUI)
    26. D3D显示文本
    30. D3D特效
    28. GUI
    32. 细节映射
    25. GameProject3
    Direct3D渲染到纹理 (部分转)
  • 原文地址:https://www.cnblogs.com/barneywill/p/10435879.html
Copyright © 2011-2022 走看看