【问题标题】:How to push data from HAWQ into GREENPLUM?如何将数据从 HAWQ 推送到 GREENPLUM?
【发布时间】:2014-06-09 10:20:13
【问题描述】:
我有一个不稳定的客户,他想在经过一些预处理后将数据从 HAWQ 推送到 GREENPLUM。有没有办法做到这一点?如果没有,是否可以在 greenplum 中创建一个外部表,从运行 HAWQ 的 HDFS 中读取它?
任何帮助将不胜感激。
【问题讨论】:
标签:
hadoop
hdfs
greenplum
external-tables
hawq
【解决方案1】:
您可以做的最简单的事情 - 使用外部可写表将数据从 HAWQ 推送到 HDFS,然后使用 gphdfs 协议使用外部可读表从 Greenplum 读取数据。在我看来,这将是最快的选择。
另一种选择是将数据存储在 HDFS 上的压缩 CSV 文件中,并直接从 HAWQ 使用它们。这样,当您在 Greenplum 中需要这些数据时,您可以以与外部表相同的方式查询它
【解决方案2】:
HAWQ和Greenplum一样,只是底层存储是hdfs,
一种方法是您可以在 HAWQ 中创建一个外部(可写)表,它将您的数据写入文件,现在您可以在 Greenplum 中创建一个外部(可读)表,该表将读取来自该创建文件的数据
另一种方式您可以使用标准输入/输出从一台服务器复制到另一台服务器,当需要将数据从开发环境传输到生产环境时,我会多次使用它,反之亦然
另一种方式您可以使用 pg_dump/gp_dump 为特定的表/表创建备份,然后使用 pg_restore/gp_restore 恢复
谢谢