我在 mongo 中有一条如下所示的记录。
{ "_id" : ObjectId("..."), "gender":"male", "age" : 19, "cars" : ["a", "b", "c"], "first" : "Daniel", "last" : "Alabi" }
{ "_id" : ObjectId("..."), "gender":"male", "age" : 21, "cars" : ["d", "e"], "first" : "Tolu", "last" : "Alabi" }
{ "_id" : ObjectId("..."), "gender":"female", "age" : 50, "cars" : [], "first" : "Tinuke", "last" : "Dada" }
我希望架构为 'f:chararray, l:chararray, g:chararray, age:int, cars:{t:(car:chararray)}' 在 pig 中加载数据后。
我试过用
TEMP = LOAD 'mongodb://localhost:27017/local.temp' USING com.mongodb.hadoop.pig.MongoLoader('first:chararray, last:chararray, age:int, gender:chararray, cars:{(chararray)}');
DESCRIBE TEMP;
我得到输出为
(Daniel,Alabi,19,male,)
(Tolu,Alabi,21,male,)
(Tinuke,Dada,50,female,{})
TEMP: {first: chararray,last: chararray,age: int,gender: chararray,cars: {(val_0: chararray)}}
有人可以帮忙写一下加载语句吗?
最佳答案
看看here :
Mongo 数组转换为 Pig 元组。
关于mongodb - 使用 Pig 从 Mongo 读取未命名的字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19928034/