我是hadoop和apachepig的新手。我在mongodb中有一个名为user的集合,具有以下结构。我想通过以下方式将\u id加载到apache pig中:
B = LOAD 'mongodb://localhost:27017/test.user' USING com.mongodb.hadoop.pig.MongoLoader ('_id:chararray,firstName:chararray,email:chararray') AS (UID,NAME,EMAIL);
但我无法加载它。姓名和电子邮件加载完美。
我正在使用这些jar文件
REGISTER /<path>/avro-1.7.5.jar
REGISTER /<path>/json-simple-1.1.jar
REGISTER /<path>/piggybank.jar
REGISTER /<path>/mongo-2.10.0.jar;
REGISTER /<path>/mongo-hadoop-core-1.1.0-SNAPSHOT.jar;
REGISTER /<path>/mongo-hadoop-pig-1.1.0-SNAPSHOT.jar;
REGISTER /<path>/mongo-hadoop-1.1.0-SNAPSHOT.jar;
用户集合的结构如下
{
"_class" : "UserInfo",
"_id" : ObjectId("51daf2ffed4d31f6"),
"assignments" : 0,
"contests" : 0,
"contes" : 0,
"email" : "princ@bank.com",
"firstName" : "Princessj",
"freeUploadsAllowed" : 2,
"freeUploadsDone" : 0,
"guideViewCount" : 0,
"hofAssignment" : 0,
"hofContest" : 0,
"inviteCount" : 0,
"issueType" : 0,
}
怎么可能请帮助我。
1条答案
按热度按时间sqserrrh1#
从Pig的使用
只需将别名设置为“id”
原始=加载'mongodb://localhost:27017/demo.yield_historical.in'使用com.mongodb.hadoop.pig.mongoloader('id,bc10year','id');