【问题标题】:Greenplum download dump to local cluster in parallelGreenplum 并行下载转储到本地集群
【发布时间】:2016-12-21 14:00:36
【问题描述】:

有没有比通过多个 JDBC 连接到主节点更有效的方法来获取整个 Greenplum 的转储?

我需要通过 JDBC 下载 Greenplum 的整个转储。为了更快地完成这项工作,我将使用 Spark 并行性(通过多个 JDBC 连接并行获取数据)。据我了解,我将有多个 JDBC 连接到 Greenplum 的单个主节点。我将以 parquet 格式将数据存储在 HDFS 中。

【问题讨论】:

    标签: jdbc parallel-processing data-warehouse greenplum


    【解决方案1】:

    对于并行导出,您可以尝试 gphdfs 可写外部表。 Gpdb 段可以并行写入/读取外部源。

    http://gpdb.docs.pivotal.io/4340/admin_guide/load/topics/g-gphdfs.html

    【讨论】:

    • 感谢您的回答!但是可写外部表只支持 CSV 格式,对吗?有没有办法改变格式?我不想编写单独的 CSV 解析器。此外,这是一个更快的问题 - 1)通过 JDBC 下载或 2)获取 CSV 并将其保存在您的集群上,然后解析它
    • gphdfs 支持 parquet 文件。 gpdb.docs.pivotal.io/43110/admin_guide/load/topics/…如果你想用spark读取csv,dataframe或者dataset都可以直接读取csv。
    【解决方案2】:

    现在,您可以使用 Greenplum-Spark 连接器来并行处理 Greenplum 段和 Spark 执行器之间的数据传输。

    此 greenplum-spark 连接器利用 Greenplum 段和 Spark 工作器中的并行处理来加速数据传输。当然,它比使用 JDBC 连接器通过 Greenplum 主节点传输数据要快。

    参考: http://greenplum-spark.docs.pivotal.io/100/index.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-06-16
      • 1970-01-01
      • 2012-05-15
      • 1970-01-01
      • 1970-01-01
      • 2013-08-05
      • 2022-06-15
      相关资源
      最近更新 更多