使用 Hive 查询 Sqoop 到 MySQL

Posted

技术标签:

【中文标题】使用 Hive 查询 Sqoop 到 MySQL【英文标题】:Sqoop to MySQL using Hive Query 【发布时间】:2012-08-20 11:27:02 【问题描述】:

我想将 Hive 表中的数据 sqoop 到 mysql 表中。两者都有相同的列集,但它们的顺序不同。

有没有办法使用具有属于 mysql 表的列顺序的 Hive 查询将数据sqoop 到 mysql 表?

【问题讨论】:

【参考方案1】:

Sqoop 目前不支持从 Hive 查询“导出”操作。支持的解决方法是运行您的 Hive 查询,该查询将更改 Hive 中的列顺序并将其结果作为临时表存储在 Hive 中。然后,您可以使用 Sqoop 导出此临时表。

【讨论】:

【参考方案2】:

您可以使用--columns 选项将您需要的MySQL 列顺序传递给sqoop export。例如,如果您的 Hive 表按顺序排列 A, B, C,那么您运行 sqoop export --connect ... --columns A,B,C 来告诉 MySQL 它获取列的顺序。您必须使用目标 MySQL 表的列名。

【讨论】:

以上是关于使用 Hive 查询 Sqoop 到 MySQL的主要内容,如果未能解决你的问题,请参考以下文章

如何用sqoop将hive分区表信息导入到mysql命令

sqoop从mysql导入到hive中问题

使用 sqoop 将mysql数据导入到hive(import)

使用sqoop从mysql导入数据到hive

如何使用 Sqoop 从 MySQL 增量导入到 Hive?

Sqoop_具体总结 使用Sqoop将HDFS/Hive/HBase与MySQL/Oracle中的数据相互导入导出