首页 > 解决方案 > 每小时 Amazon Redshift 表到 S3 中的外部表

问题描述

我想将数据从 Amazon Redshift 表导出到存储在 Amazon S3 中的外部表中。每小时,我都想将 Redshift 源中的行导出到外部表目标中。

AWS 中有哪些选项可以实现这一目标?

我知道有UNLOAD允许我将数据导出到 S3 的命令,但我认为将数据存储到外部表(也已分区)中是行不通的。或者,Amazon EMR 可能是实现此功能的唯一方法吗?

标签: amazon-web-servicesamazon-s3amazon-redshiftamazon-emr

解决方案


自 2020 年 6 月以来,我认为现在可以插入外部 tsble: https ://aws.amazon.com/about-aws/whats-new/2020/06/amazon-redshift-now-supports-writing-to-external -亚马逊-s3中的表格/

继承人文档: https ://docs.aws.amazon.com/redshift/latest/dg/r_INSERT_external_table.html

基本上有2种方式:

  • 插入到 external_schema.table_name { select_statement } 或
  • 将外部表创建为 { SELECT }

通常,您在您的 redshift 外部架构(例如 my_stg)中指定 glu 数据库名称,因此您在 redshift 外部架构中创建的任何外部表都已经知道胶水目录数据库名称。这是好消息,因为操作问题来自 2018 年


推荐阅读