Hive - 移动 HDFS 上的现有仓库位置

Hive - Move existing warehouse location on HDFS

我有一个我们已经使用了一段时间的 HDP 集群,Hive 中现有的数据库和表充满了数据

我们决定将 Hive 数据仓库在 HDFS 上的位置从 /apps/hive/warehouse 更改为自定义目录

我在 hive-site.xml 中更改了 hive.metastore.warehouse.dir,并且在我们创建新的 dbs/tables

时考虑了更改

但是现有内容仍在 /apps/hive/warehouse
有没有办法在不破坏 Hive 或重新导入所有内容的情况下移动它?

过去做过这样的事情。您需要进行 hack 并直接更新 HIVE 元存储中的值:

  1. 连接到 MySQL 或其他带有 HIVE 元存储的数据库;
  2. 使用配置单元;
  3. select * 来自星展银行;
  4. 更新 DBS 集 DB_LOCATION_URI = 'NEW_LOCATION' 其中 DB_ID = UPDATED_DB_ID;
  5. 重新启动metastore/hiveserver2 - 不记得如何