• FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. com/mongodb/util/JSON


    问题:

         将MongoDB数据导入Hive,按照https://blog.csdn.net/thriving_fcl/article/details/51471248文章,在hive建外部表与mongodb做映射后,执行后出现

    FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. com/mongodb/util/JSON

    建表语句如下:  

    CREATE EXTERNAL TABLE mongotohive
      id string,
      userid string,
      age bigint,
      status string
    )
    STORED BY 'com.mongodb.hadoop.hive.MongoStorageHandler'
    WITH SERDEPROPERTIES('mongo.columns.mapping'='{"id":"_id","userid":"user_id","age":"age","status":"status"}')
    TBLPROPERTIES('mongo.uri'='mongodb://localhost:27017/mydb.users'); 

    mongodb 数据如下:

    db.users.find()
    { "_id" : ObjectId("5b456e33a93daf7ae53e6419"), "user_id" : "abc123", "age" : 58, "status" : "D" }
    { "_id" : ObjectId("5b45705ca93daf7ae53e8b2a"), "user_id" : "bcd001", "age" : 45, "status" : "C" }

    解决方案:

    mongo-hadoop-core-2.0.0.jarmongo-hadoop-hive-2.0.0.jarmongo-java-driver-3.7.1.jar三个jar包放到hivelib文件夹下后,再次运行成功。如下:

    hive> CREATE EXTERNAL TABLE mongotohive
        > ( 
        >   id string,
        >   userid string,
        >   age bigint,
        >   status string
        > )
        > STORED BY 'com.mongodb.hadoop.hive.MongoStorageHandler'
        > WITH SERDEPROPERTIES('mongo.columns.mapping'='{"id":"_id","userid":"user_id","age":"age","status":"status"}')
        > TBLPROPERTIES('mongo.uri'='mongodb://localhost:27017/mydb.users');
    OK
    Time taken: 1.431 seconds
    hive> select * from mongotohive;
    OK
    5b456e33a93daf7ae53e6419        abc123  58      D
    5b45705ca93daf7ae53e8b2a        bcd001  45      C
    Time taken: 0.601 seconds, Fetched: 2 row(s)
    hive> 

  • 相关阅读:
    使用 Trello 管理自己与团队的工作
    Google译者工具包
    curl的速度为什么比file_get_contents快以及具体原因
    Mac使用秘钥登录Linux服务器
    curl抓取页面时遇到重定向的解决方法
    PHP cURL 超时设置 CURLOPT_CONNECTTIMEOUT 和 CURLOPT_TIMEOUT 的区别
    max函数比较字符串类型
    Dictionary 泛型类
    .NET Framework 概念概述
    认知Web服务器
  • 原文地址:https://www.cnblogs.com/abcdwxc/p/9295794.html
Copyright © 2020-2023  润新知