我们可以使用sqoop将数据从hadoop(hive)导出到amazon redshift吗

zsbz8rwp  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(473)

我有一个本地hadoop集群,想将数据加载到amazonredshift中。考虑到成本,informatica/talend不是一个选项,所以我们可以利用sqoop将表从hive直接导出到redshift吗?sqoop是否连接到redshift?

68bkxrlz

68bkxrlz1#

将数据加载到amazonredshift中最有效的方法是将数据放入amazons3,然后发出 COPY 红移命令。这将在所有红移节点上执行并行数据加载。
而sqoop可能可以通过使用传统的 INSERT 在sql命令中,将数据插入redshift不是一个好方法。
首选方法是:
将数据以csv格式导出到amazons3中(最好是.gz或.bzip格式)
触发a COPY 红移命令
通过将数据复制到csv格式的配置单元外部表中,您应该能够将数据导出到s3。
或者,红移可以从hdfs加载数据。它需要一些额外的设置来授予对emr集群的红移访问。请参阅红移文档:从amazon emr加载数据

suzh9iv8

suzh9iv82#

copy命令不支持upsert它只是简单地加载您提到的次数,并以重复的数据结束,所以更好的方法是使用glue job并修改它以更新else insert或使用lambda upsert到redshift

相关问题