【问题标题】:loading a pg_dump off of s3 into redshift将 s3 的 pg_dump 加载到 redshift
【发布时间】:2017-11-30 01:03:40
【问题描述】:

我正在尝试将完整的数据库转储加载到 Redshift。是否有一个命令可以将 s3 上的 pg_dump 中的数据恢复到 Redshift 中?如果没有,解决此问题的最佳步骤是什么?

谢谢

【问题讨论】:

    标签: amazon-s3 amazon-redshift pg-dump


    【解决方案1】:

    如果您有一个非压缩 pg_dump,这应该可以使用 psql 命令来实现(您可能需要手动编辑以获得正确的语法,具体取决于您的版本和选项集)。 但是,这是一种非常低效且缓慢的加载 redshift 的方法,我不推荐它。如果您的表很大,则可能需要几天或几周的时间!

    你需要做的是:

    1. 根据源表在redshift上创建目标表,但是 考虑排序键和分布。
    2. 使用 postgres 将您的 postgres 源表卸载到 csv 文件中 “复制”命令
    3. 如果源 csv 文件非常大(例如超过 100MB), 考虑将它们拆分为单独的文件,因为它们将加载 更快(redshift 将并行化)
    4. gzip csv 文件(推荐但不是必需的)
    5. 将这些 csv 文件上传到 s3,每个表都有一个单独的文件夹
    6. 使用 redshift 副本将数据从 s3 加载到 redshift 命令

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-28
      • 1970-01-01
      • 2017-10-22
      • 1970-01-01
      • 2016-05-15
      • 2015-11-27
      • 2014-01-30
      相关资源
      最近更新 更多