Mongodb 将数据从mongo导出到配置单元 我的输入:mongo db(版本3.4.4)中的集合(“demo1”) 我的输出:我的数据导入到hive中的数据库(“demo2”)(版本1.2.1.2.3.4.7-4) 用途:在mongo和配置单元之间创建连接器
错误: 执行错误,从org.apache.hadoop.hive.ql.exec.ddlstask返回代码1。com/mongodb/util/JSONMongodb 将数据从mongo导出到配置单元 我的输入:mongo db(版本3.4.4)中的集合(“demo1”) 我的输出:我的数据导入到hive中的数据库(“demo2”)(版本1.2.1.2.3.4.7-4) 用途:在mongo和配置单元之间创建连接器,mongodb,hadoop,hive,Mongodb,Hadoop,Hive,错误: 执行错误,从org.apache.hadoop.hive.ql.exec.ddlstask返回代码1。com/mongodb/util/JSON 我按照这些步骤尝试了两种解决方案(但错误依然存在): 1) 我在mongo(通过robomongo)创建了一个连接到docker的本地收藏 2) 我上传这些JAR版本并将其添加到hive中 ADD JAR /home/.../mongo-hadoop-hive-2.0.2.jar; ADD JAR /home/.../mongo-hado
我按照这些步骤尝试了两种解决方案(但错误依然存在): 1) 我在mongo(通过robomongo)创建了一个连接到docker的本地收藏 2) 我上传这些JAR版本并将其添加到hive中
ADD JAR /home/.../mongo-hadoop-hive-2.0.2.jar;
ADD JAR /home/.../mongo-hadoop-core-2.0.2.jar;
ADD JAR /home/.../mongo-java-driver-3.4.2.jar;
不幸的是,错误没有改变;因此,我上传了这些版本,我在选择正确的导出版本时犹豫不决,因此我尝试以下方法:
ADD JAR /home/.../mongo-hadoop-hive-1.3.0.jar;
ADD JAR /home/.../mongo-hadoop-core-1.3.0.jar;
ADD JAR /home/.../mongo-java-driver-2.13.2.jar;
3) 我创建一个外部表
CREATE EXTERNAL TABLE demo2
(
id INT,
name STRING,
password STRING,
email STRING
)
STORED BY 'com.mongodb.hadoop.hive.MongoStorageHandler'
WITH
SERDEPROPERTIES('mongo.columns.mapping'='{"id":"_id","name":"name","password":"password","email":"email"}')
TBLPROPERTIES('mongo.uri'='mongodb://localhost:27017/local.demo1');
- 配置单元中返回的错误:
如何解决这个问题?在上复制正确的jar文件(
mongo-hadoop-core-2.0.2.jar
,mongo-hadoop-hive-2.0.2.jar
,mongo-java-driver-3.2.2.jar
)集群的所有节点都帮了我一把
其他需要注意的事项:
- 虔诚地遵循此处提到的所有步骤-
- 遵守此处给出的要求-
其他有用的链接