0


【Hive-Partition】Hive添加分区及修改分区location

【Hive-Partition】Hive添加分区及修改分区location

当我们在 Hive 中创建外表时,需要映射 HDFS 路径,数据落入到 HDFS 上时,我们在 Hive 中查询时会发现 HDFS中有数据,Hive 没有数据,那是因为我们在 HDFS 上的数据还没有成功修复至 Hive中,需要进行分区的修复(或者称之为添加分区)

1)整表修复数据

set hive.msck.repair.batch.size=1;set hive.msck.path.validation=ignore;
msck repair table test;

注意:如果数据量较大,或分区数量较多,整表修复虽然方便但是会伴随风险。

2)单独分区修复

  • 添加分区
altertable dwd.test addifnotexistspartition(sample_date='20220102',partition_name='r') location '/warehouse/tablespace/external/hive/dwd.db/test/sample_date=20220102/partition_name=r';
  • 修改分区
altertable dwd.test set location '/warehouse/tablespace/external/hive/dwd.db/test/sample_date=20220102/partition_name=r'

注意:每个分区单独修复这样比较稳健,但是伴随的就是工作量会变多,也就是说 Hive 表中有多少个 parition 就要执行多少次 sql。


本文转载自: https://blog.csdn.net/weixin_53543905/article/details/131534364
版权归原作者 bmyyyyyy 所有, 如有侵权,请联系我们删除。

“【Hive-Partition】Hive添加分区及修改分区location”的评论:

还没有评论