hive移动并还原一些分区

0yg35tkg  于 2021-05-29  发布在  Hadoop
关注(0)|答案(0)|浏览(298)

我有一个50tb的托管分区(按日期)配置单元表,我想从中移动一些旧分区到外部hdd,以便在以后需要时恢复它们。
脚本如下:
迁出:

$ hdfs dfs -get ${HIVE_WAREHOUSE_TABLE_PATH}/ingest_date=2016-01-01 ${LOCAL_TABLE_PATH}/2016-01-01
$ hdfs dfs -rm -r -skipTrash ${HIVE_WAREHOUSE_TABLE_PATH}/ingest_date=2016-01-01
$ hive -e "ALTER TABLE ${TABLE} DROP IF EXISTS PARTITION (ingestion_date='2016-01-01') PURGE;"

还原:

$ hdfs dfs -put ${LOCAL_TABLE_PATH}/2016-01-01 ${HIVE_WAREHOUSE_TABLE_PATH}/ingest_date=2016-01-01
$ hive -e "ALTER TABLE ${TABLE} ADD PARTITION (ingest_date='2016-01-01') LOCATION ${HIVE_WAREHOUSE_TABLE_PATH}/ingest_date=2016-01-01;"

我是否错过了上述策略中的某些内容?
我试过: $ hive --hivevar local_path=${LOCAL_TABLE_PATH} -e "EXPORT TABLE myDatabase.theTable PARTITION (ingest_date='2016-01-01') to '${local_path}/2016-01-01';" 但这需要太长的时间来复制1年的分区,我正在努力避免这种情况。
谢谢您,
向右

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题