Redshift - 跨账户集群同步

Posted

技术标签:

【中文标题】Redshift - 跨账户集群同步【英文标题】:Redshift - Cross account cluster sync-up 【发布时间】:2019-12-31 16:12:09 【问题描述】:

我需要将数据从一个 Redshift 集群同步到另一个账户的 Redshift 集群,包括 Accesses。我有跨越多个表的 TB 数据。我需要每天进行同步。

以下两个选项似乎有一些缺点:

    UNLOAD 和 LOAD 将逐表工作,但不会满足此需求。 通过集群快照恢复将创建一个全新的集群,该集群将更改端点。

还有其他选择吗?

【问题讨论】:

【参考方案1】:

Redshift 集群之间没有提供“同步”功能。您也许可以使用可以同步数据的第三方实用程序,但这些实用程序也会逐个表使用 UNLOADCOPY

如果您担心集群终端节点发生变化,那么您可以使用 Amazon Route 53 定义您自己的 DNS 名称。然后,当集群恢复时,只需更新 Route 53 中的 CNAME 记录以指向新的终端节点 DNS 名称。这样,即使端点发生变化,也可以使用相同的 DNS 名称。

【讨论】:

谢谢约翰。我正在尝试。只是一个关于通过快照恢复的快速问题。恢复到新集群后是否会保留细粒度访问(表、视图、函数)? 是的,除了名称之外,集群都是相同的。 谢谢约翰,这有帮助。

以上是关于Redshift - 跨账户集群同步的主要内容,如果未能解决你的问题,请参考以下文章

是否可以从另一个账户使用 IAM 角色访问 Redshift?如何?

在 redshift 中执行跨数据库联合查询是不是可行?

授予 Redshift Cluster 对另一个账户拥有的 S3 存储桶的访问权限

使用 Amazon Redshift 进行维度建模是不是可行

无法使用 aws nodejs sdk 创建 Redshift 表

Elasticsearch 主从同步之跨集群复制