Hive是大数据生态圈中的组件之一。它能提供sql查询,适合做数据仓库。那删除某个分区是很常见的操作。小编带大家如何清空hive表的某个分区。
工具/原料
HIVE、电脑、Xshell、
方法/步骤
1
准备好环境,小编这边环境已经有了,就不讲解如何搭建环境,毕竟搭建一套大数据需要一段时间的。准备一个分区表查看有多少个分区show partitions 表名
2
方法1:使用hive自带sql语法进行删除alter table 表名 drop partition (etl_dt=20161118);
3
再次查看20161118分区还在不在,如果分区不在了,说明该分区已经被删除,数据也已被清空。show partitions 表名;
4
方法2:采用hdfs命令进行清空这个表还剩下一个分区,咱们把这个分区也清空。先使用hdfs查看该表实际分区以及数据目录在哪hdfs dfs -ls /user/hive/warehouse/tbdata.db/表名小写/或者hadoop fs -ls /user/hive/warehouse/tbdata.db/表名小写/两个命令效果一样
5
使用hdfs命令删除该分区20161124目录 hdfs dfs -rm -r -f /user/hive/warehouse/tbdata.db/表名小写/etl_dt=20161124
6
最后在查看没有分区目录了
7
最查看进hive命令行查看此表是否还有数据
注意事项
真实操作,如有帮助请点赞或投票,谢谢~