【问题标题】:Issue with sqoop import from mysql to hbase从 mysql 到 hbase 的 sqoop 导入问题
【发布时间】:2013-04-22 13:47:35
【问题描述】:

我正在尝试使用 sqoop 将数据从 mysql 导入 hbase:

sqoop import --connect jdbc:mysql://<hostname>:3306/test --username USERNAME -P --table testtable --direct --hbase-table testtable --column-family info --hbase-row-key id --hbase-create-table

过程运行顺利,没有任何错误,但数据进入hdfs,没有进入hbase。

这是我的设置:

HBase 和 Hadoop 以分布式模式安装在我的三台服务器集群中。 Namenode 和 HBase Master 是一台服务器。 Datanodes 和 Region 服务器位于另外两个服务器中。 Sqoop 仅安装在 NameNode 服务器中。 我正在使用 Hadoop 版本 0.20.2-cdh3u3、hbase 版本 0.90.6-cdh3u4 和 sqoop 版本 1.3.0-cdh3u3。

有什么建议我做错了吗?

【问题讨论】:

    标签: hadoop hbase sqoop


    【解决方案1】:

    Sqoop 的直接连接器通常不支持 HBase,而 MySQL 直接连接器肯定是这种情况。如果您需要将数据导入 HBase,则应删除 --direct 选项。

    【讨论】:

    • 非常感谢 Jarek,它解决了这个问题。该表正在 HBase 中创建,但出现以下错误:13/04/23 11:53:23 INFO mapred.JobClient: Running job: job_201304231148_0003 13/04/23 11:53:24 INFO mapred.JobClient: map 0% reduce 0% 13/04/23 11:53:40 INFO mapred.JobClient: Task Id : attempt_201304231148_0003_m_000000_0, Status : FAILED Error: testtable : Unsupported major.minor version 51.0 任何帮助将不胜感激。
    • 搞定了...需要在hadoop-env.sh文件中正确设置JAVA_HOME路径
    【解决方案2】:
    猜你喜欢
    • 2015-11-17
    • 2014-07-23
    • 1970-01-01
    • 1970-01-01
    • 2014-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多