如何将 hive derby 元存储迁移到 postgres 元存储

Posted

技术标签:

【中文标题】如何将 hive derby 元存储迁移到 postgres 元存储【英文标题】:How to migrate hive derby metastore to postgres metastore 【发布时间】:2016-03-18 18:16:58 【问题描述】:

我使用 derby 作为 hive Metastore 已经有一段时间了。 有没有办法将元存储迁移到 Postgresql。

我正在使用 Apache Hive - 0.13

【问题讨论】:

【参考方案1】:

目前我发现的最佳方法如下:

**Export from existing database**
Use the derby tool 'ij' (assuming you are placed in the root installation folder for the pillar):
java -cp lib/derby-10.10.1.1.jar:lib/derbytools-10.10.1.1.jar:lib/derbyclient-10.10.1.1.jar org.apache.derby.tools.ij
Then run the following commands to extract the content of the somedb database:
CONNECT 'jdbc:derby:/path/to/somedb'
CALL SYSCS_UTIL.SYSCS_EXPORT_TABLE(null, 'TABLE1', 'table1', null, null, null);
This should create the file: 'table1'.

**Import the data to the PostgreSQL database**
Run the 'psql' application on the console/terminal.
Log onto somedb and ingest data (and fix the automated sequences)
\c somedb
COPY table1 FROM '/path/to/table1' with csv;
SELECT SETVAL('table1_guid_seq', (SELECT MAX(guid) FROM table1));

对所有要从 derby 导出并导入 postgresql 的表重复此操作。

【讨论】:

以上是关于如何将 hive derby 元存储迁移到 postgres 元存储的主要内容,如果未能解决你的问题,请参考以下文章

Hive的三种安装模式简介及12步安装步骤详解

HIVE学习(待更新)

Hive篇--搭建Hive集群

如何将数据从 Ms 访问迁移到 Derby 数据库或如何将数据从 My sql 迁移到 Derby 数据库

浅谈Hive

Hive导入导出