我有一个以镶木地板格式存储在s3中的数据集。我想知道我是否可以使用copy命令将这些数据加载到redshift中。我已经读过我可以使用redhisft谱,我可以提到存储在hive中的模式并在redhisft中读取它。
对我来说有用的是,如果我可以从redhisft查询存储在s3中的这个镶木地板数据,或者我是否可以使用copy命令将它们直接加载到redshift中。
有些选项我可以使用jdbc旋转群集并将镶木地板数据写入s3。但问题是jdbc与复制命令相比太慢了。
答案 0 :(得分:1)
使用Redshift外部架构和表格,您可以将来自S3的镶木地板数据加载到红移。
def run_from_argv(self, argv):
# keep a copy because the parent might modify `argv`
self._argv = argv[:]
super(Command, self).run_from_argv(argv)
来源: - https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/
http://docs.aws.amazon.com/redshift/latest/dg/c-getting-started-using-spectrum.html
http://docs.aws.amazon.com/redshift/latest/dg/c-getting-started-using-spectrum-query-s3-data.html
从外部表中插入数据到红移表。
插入表格 (从external_table中选择*);