【问题标题】:Periodically moving query results from Redshift to S3 bucket定期将查询结果从 Redshift 移动到 S3 存储桶
【发布时间】:2016-03-16 06:58:51
【问题描述】:

我的数据在 Redshift 集群的一个表中。我想定期对 Redshift 表运行查询并将结果存储在 S3 存储桶中。

我将对 S3 存储桶中的这些数据运行一些数据转换,以输入另一个系统。根据 AWS 文档,我可以使用 UNLOAD 命令,但是有没有办法定期安排此操作?我搜索了很多,但没有找到任何相关信息。

【问题讨论】:

    标签: amazon-web-services amazon-s3 amazon-redshift


    【解决方案1】:

    您可以使用Airflow 之类的计划工具来完成此任务。 Airflow 似乎无缝连接到 Redshift 和 S3。您可以有一个 DAG 操作,它定期轮询 Redshift 并将数据从 Redshift 卸载到 S3。

    【讨论】:

    • 气流中是否有用于连接红移和执行操作的包?我找不到一个
    • 你可以试试boto。我过去用它来连接到 S3。
    【解决方案2】:

    我不相信 Redshift 有能力定期安排查询。您需要为此使用其他服务。您可以使用 Lambda 函数,也可以在 EC2 实例上安排 cron 作业。

    【讨论】:

      【解决方案3】:

      我相信您正在寻找 AWS 数据管道服务。

      您可以使用 RedshiftCopyActivity (http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-redshiftcopyactivity.html) 将数据从 redshift 复制到 s3。

      我正在从上述网址复制相关内容以备将来使用:

      "您还可以使用 RedshiftCopyActivity 从 Amazon Redshift 复制到 Amazon S3。有关更多信息,请参阅 S3DataNode。 您可以使用 SqlActivity 对已加载到 Amazon Redshift 的数据执行 SQL 查询。"

      如果这有帮助,请告诉我。

      【讨论】:

        【解决方案4】:

        您应该尝试 AWS Data Pipelines。您可以安排它们定期或按需运行。我相信它会解决您的用例

        【讨论】:

          猜你喜欢
          • 2017-05-10
          • 2020-09-19
          • 2017-01-10
          • 1970-01-01
          • 1970-01-01
          • 2017-01-09
          • 2020-10-05
          • 2020-05-29
          • 1970-01-01
          相关资源
          最近更新 更多