2014-02-12 52 views
0

我試圖使用com.mongodb.hadoop.pig.BSONLoader(https://github.com/mongodb/mongo-hadoop/blob/master/pig/README.md)將數據從MongoDB BSON文件加載到Pig中,但是我陷入困境。 MongoDB上的數據包含可變大小的數組,我不知道如何將它加載到pig中(作爲元組?)。下面是MongoDB的一個樣本記錄:如何使用mongo-hadoop從Pig上的BSON文件加載數組?

{"_id": {"$oid": "52fbbca6e4b029a79cd17ff7"}, 
"field": "value", 
"variableSizeArray": [ 
    "value1", 
    "value2", 
    "valueN" 
] 
} 

我試過下面的選項,其中沒有一個似乎工作:

raw = LOAD 'file:///tmp/teststreams.bson' using com.mongodb.hadoop.pig.BSONLoader('','field:chararray,variableSizeArray:()'); 
raw = LOAD 'file:///tmp/teststreams.bson' using com.mongodb.hadoop.pig.BSONLoader('','field:chararray,variableSizeArray:{T:(h:chararray)}'); 

感謝有這方面的幫助。

回答

2

終於搞明白了。做到這一點的方法是不試圖指定數據類型。此作品:

raw = LOAD 'file:///tmp/teststreams.bson' using com.mongodb.hadoop.pig.BSONLoader('','field,variableSizeArray'); 
相關問題