【问题标题】:Moving Hive table from HDFS to Amazon Redshift将 Hive 表从 HDFS 移动到 Amazon Redshift
【发布时间】:2015-05-06 16:04:35
【问题描述】:
我尝试将通过连接 4-5 个数据集创建的 Hive 表传输到 Redshift。这个流程应该如何实现?
我们在边缘节点上有可用的 R。 Hive 表必须先转移到 S3,然后从 s3 转移到 Redshift。这是唯一的方法吗?
是否可以使用 R,即使用 RHive 包将我的数据集从 HDFS 移动到 R,然后将此数据集从 R 移动到 Redshift?
【问题讨论】:
标签:
r
hadoop
hive
amazon-redshift
【解决方案1】:
您可以使用 RJDBC 连接到 Redshift(Redshift 是 pgsql)。因此,您可以使用从 hive 读取一行,并使用 RJDBC 将其加载到 Redshift。
您创建 1000 个或更多批次并插入 Redshift。
如果您正在使用插入方法,则使用每列的编码类型在 redhshift 中创建表。
将数据加载到 s3 然后从 s3 复制表单比插入命令更快。复制默认会应用压缩(编码)。
所以我建议你使用从 HDFS 加载到 s3 然后复制命令。