Hive归档分区表

背景

Hive可以把分区表的分区归档成HAR文件,也可以把归档完的分区进行解压。

以下步骤基于Hadoop2.8.5和Hive2.3.5

步骤

1、把hadoopHome/share/hadoop/tools/lib/hadoop-archives-2.8.5.jar放到hiveHome/lib目录下

2、在hiveHome/conf/hive-site.xml中使能分区归档

  <property>
    <name>hive.archive.enabled</name>
    <value>true</value>
  </property>

3、对于某个分区表,分区归档命令如下

alter table employees archive partition(country='US');

然后可以在hive中查看压缩结果

dfs -ls  /user/hive/warehouse/employees/country=US

结果如下,可以看到在分区目录下生成了data.har文件,就是归档文件

 4、对于归档后的分区表,解压的命令如下所示

alter table employees unarchive partition(country='US');

然后可以在hive中查看压缩结果

dfs -ls  /user/hive/warehouse/employees/country=US

输出如下

结语

关于所需的jar包,《Hive编程指南》中说的是hadoop-a.b.c-tools.jar,可能我用的hadoop版本比较新,所以我的HadoopHome下没有这个jar包,用网上下载的还会报错。最后,我发现我的HadoopHome下直接有归档相关的jar包hadoop-archives-2.8.5.jar,把它放到hiveHome的lib目录下,重启hive客户端就不会有错了。

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页