Redshift 数据仓库和 Glue ETL 设计建议

0

【以下的问题经过翻译处理】 AWS合作伙伴正在为一个注重安全的客户设计一个数据仓库系统。该合作伙伴有以下与设计Redshift数据仓库和相关ETL管道相关的问题。我想请您帮忙确认以下问题的理解:

  1. 总体上,从源系统到Amazon Redshift进行增量加载/CDC的推荐方法是什么?
  2. 建议使用AWS Glue将数据从Amazon Redshift(热数据)导出到Amazon S3(冷数据)吗?
  3. 何时需要更新AWS Glue数据目录?只有当源表定义更改时吗?还有其他情况吗?
  4. 有安排/工作流机制来定义加载依赖项到Amazon Redshift吗?
  5. Amazon Redshift中是否有机制允许在数据加载失败时进行重试?例如,维度数据需要在事实数据表加载开始之前完全加载?AWS Glue工作流也是这里推荐的工具吗?
  6. 是否可以使用Tableau同时查询Amazon Redshift和Amazon Redshift Spectrum中的数据?
  7. 是否有推荐的共享资源,例如最佳实践和在AWS中设计数据仓库的方法?
profile picture
专家
已提问 4 个月前15 查看次数
1 回答
0

【以下的回答经过翻译处理】 1. 常规情况下,从源系统到AWS Redshift的增量加载/CDC建议采用什么方法? 答:这取决于源系统的类型。对于关系型数据库,DMS可以持续复制变更数据。对于S3上的文件,Glue作业具有存储最近加载数据的标记的Bookmark功能,例如时间戳或主键值。

  1. 是否建议使用AWS Glue将数据从Redshift(热数据)导出到S3(冷数据)? 答:从Redshift到S3导出数据有两种主要方法。使用UNLOAD命令,或使用Spectrum外部表将数据插入S3。

  2. 何时需要对Glue数据目录运行更新?仅当源表定义发生更改时吗?还有其他情况吗? 答:当表的结构发生更改时,例如添加/删除列,以及添加了分区时,可以运行Glue Crawlers以更新Glue Data Catalog中的元数据。还可以使用Glue API进行此目的,并且不会产生Crawler成本。

  3. 是否有一个调度/工作流机制来定义将数据加载到Redshift的依赖关系? 答:这可以通过多种方式完成。可以使用Step Functions和Glue Workflows。此外,Redshift现在具有内置计划程序。

  4. 是否有一种机制可以在数据加载失败时允许重试?例如,维度数据需要在事实数据表加载开始之前完全加载?在这里,AWS Glue工作流程是否建议工具? 答:可以使用编排工具来完成此目的,例如Step Functions或Glue Workflows。如果使用存储过程构建数据转换,则可以使用一个集中的加载过程来编排单个加载过程(用于维度或事实)。

  5. 可以同时从Redshift和Redshift Spectrum查询数据使用Tableau吗? 答:是的。

profile picture
专家
已回答 4 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则