在hdfs中选择的最佳方法是什么?

时间:2017-04-13 16:04:25

标签: mysql hadoop hdfs relational-database sqoop

我有一个带有1个主节点和4个节点的hadoop环境,我用sqoop保存mysql应用程序的所有数据

我需要通过应用程序的Web访问保存在hadoop中的这些数据,换句话说:如果用户在6个月之前创建了一个日期记录,我希望应用程序选择hadoop数据。

它们是关系数据,mysql。我不需要做任何好的分析。

  • 这可行吗?
  • 最好的方法是什么?
  • 你用什么工具?
  • 在这种情况下,发送hdfs中的数据是不可行的吗?

提前谢谢

1 个答案:

答案 0 :(得分:1)

据我所知,您使用sqoop将数据从MySQL导入HDFS。

现在你想在HDFS中对这些数据进行一些查询。

您可以使用 Hive 执行此操作。您可以对数据执行HQL(类似于SQL)。

您可以使用sqoop将数据直接从MySQL导入Hive。现在你在Hive中有一个类似于MySQL的表。您可以对其执行任何查询。

示例命令:

sqoop import \
--connect 'jdbc:mysql://myhost:3306/classicmodels' \
--driver com.mysql.jdbc.Driver \
--username root \
--password root \
--table abc \
--target-dir /user/dev/db/sqoop/temp_81323/ \
--hive-import \
--hive-table hive_abc \
--null-string '\\N' \
--null-non-string '\\N' \
--verbose

检查sqoop documentation以获取更多详细信息。

相关问题