我有一组存储在mongodb上的文件,就像这样
{
“_ id”:{“$ oid”:“5201ca52ddf19f9c7aea0bb2”},
“id”:1,
“path”:“C:// ......”,
“经验”:[
{id =“1”,date =“12/2012”,content =“blabla”}
{id =“2”,date =“12/2013”,content =“blabla2”}
}
我想处理这些文档的“体验”字段以获得如下输出: (1,1,12 / 2012,布拉布拉)
(1,2,12 / 2013,blabla2)
架构是(document_id,exp_id,exp_date,exp_content)。
我正在通过pig和MongoLoader加载文档,这是我的代码:
REGISTER /root/mongo-2.10.1.jar
REGISTER /root/pig_librairies/mongo-hadoop_cdh4.3.0-1.1.0.jar
REGISTER /root/pig_librairies/mongo-hadoop-pig_cdh4.3.0-1.1.0.jar
REGISTER /root/pig_librairies/mongo-hadoop-core_cdh4.3.0-1.1.0.jar
persons = LOAD 'mongodb://localhost/gestion_competences.cv'
USING com.mongodb.hadoop.pig.MongoLoader('id:chararray, path:chararray, experiences:charrarray)
AS (id, path, experiences);
我知道问题在这里:
experiences:chararray
但我不知道我可以使用什么结构。我试过袋子和地图,但它不起作用......
您对如何解决问题有所了解吗?
由于
答案 0 :(得分:0)
尝试experiences:map[]
,然后您可以通过密钥experiences#'content'