我使用mongohadoopjars在hadoop中使用hive表查询mongodb。
使用了以下jar:mongo-hadoop-core-1.3.0.jar mongo-hadoop-hive-1.3.0.jar mongo-java-driver-3.2.1.jar
我也在hadoop类路径中添加了jar。在创建表时,我在配置单元类路径中手动添加jar。
环境:cdh 6.1.1 hadoop 3.0.0 hive 2.1.1
采取的步骤:
我已经用serdeProperty创建了一个存储在'com.mongodb.hadoop.hive.mongostragehandler'中的外部表
表已成功创建,但当我查询它时。
我得到了以下错误信息splitter.standalonemongosplitter:运行splitvector检查splitmongodb://username:password@serverip:端口号
线程“main”java.lang.nosuchfielderror中出现异常:日志位于com.mongodb.hadoop.hive.input.hivemongoinputformat.getsplits(hivemongoinputformat)。java:81)位于com.mongodb.hadoop.hive.input.hivemongoinputformat.getsplits(hivemongoinputformat)。java:44)位于org.apache.hadoop.hive.ql.exec.fetchoperator.getnextsplits(fetch operator)。java:372)在org.apache.hadoop.hive.ql.exec.fetchoperator.getrecordreader(获取操作符。java:459)
注意:我是mongo的新手,所以请给我一些建议来消除这个错误并查询配置单元中的数据
暂无答案!
目前还没有任何答案,快来回答吧!