如何将AWS Glue表结构复制到AWS Redshift

我在不使用搜寻器的情况下使用AWS Glue创建了新的数据库和表结构,并且可以做相同的事情,我的意思是使用搜寻器创建表结构。没问题,我想要的是基于AWS Glue表元数据在AWS Redshift中创建相同的表结构

我是用Django和Python手动完成的,我获取了表的元数据并创建了“ CREATE TABLE ...”命令并执行它。它有效,我已经有了这个替代解决方案。 我们可以从AWS端还是使用Boto3等AWS开发工具包来做到这一点?我不需要表中的任何数据,只想在AWS Redshift中创建空表。这可能吗?

我还检查了AWS Redshift Spectrum。如果可以在AWS Redshift中创建此表,则可以使用Spectrum命令从S3或任何其他资源中获取数据。所以我首先需要表格。

kylezh 回答:如何将AWS Glue表结构复制到AWS Redshift

鉴于您使用正确的模式及其所有分区填充了Glue表,您应该能够使用Redshift Spectrum在其上运行查询,而不必使用iframeDoc.getElementsByClassName("clsScrollContainer")(0).getElementsByClassName("clsTab")(0).Click 语句创建实际的表。

在RedShift客户端/编辑器中,创建一个指向包含Glue表(此处称为CREATE TABLE...)的数据目录数据库的外部(频谱)模式。 spectrum_db值应该是Redshift群集IAM角色的ARN,您应该在其中添加iam_role操作策略。

glue:GetTable

您现在应该可以在外部Glue表上运行查询。唯一的限制是您不能create external schema spectrum_schema from data catalog database 'spectrum_db' iam_role 'arn:aws:iam::123456789012:role/MySpectrumRole' create external database if not exists; 浏览表:

SELECT *

从那里应该可以更轻松地将数据从Spectrum移到Standard Redshift。

参考:

本文链接:https://www.f2er.com/2660783.html

大家都在问