Hive TEXTFILE类型文件ARC4压缩Select时乱码

TEXTFILE类型文件ARC4压缩Select时乱码

现象描述

Hive查询结果表做压缩存储(ARC4),对结果表做select * 查询时返回结果为乱码。

可能原因

TEXTFILE文件非块文件,使用ARC4按条加密后,读取文件会异常,无法解析内容,导致乱码。

定位思路

  1. 设置压缩类:org.apache.hadoop.io.encryption.arc4.ARC4BlockCodec,按块对TEXTFILE类型文件加密。
  2. 正常设置耗时1分钟以内。

处理步骤

  1. 查询出乱码以后,在beeline客户端执行以下命令。 set mapreduce.output.fileoutputformat.compress.codec=org.apache.hadoop.io.encryption.arc4.ARC4BlockCodec; set hive.exec.compress.output=true; 输入admin用户的密码完成登录。
  2. 重新导入数据到结果表。 insert overwrite table tbl_result select * from tbl_source;
  3. 执行select命令检查内容是否为乱码。 select * from tbl_result; 没有乱码证明问题得到解决。

关注公众号“大模型全栈程序员”回复“小程序”获取1000个小程序打包源码。更多免费资源在http://www.gitweixin.com/?p=2627

发表评论

邮箱地址不会被公开。 必填项已用*标注