我一直在研究一些代码,使用MongoDb-Hadoop Connector生成猪和饲料到MongoDb的数据,该连接正常。
但是,当它们存储在MongoDb集合中时,我一直在尝试重命名您可能称之为的字段名称或属性。
这是我用来将结果存储在集合中的。
results = FOREACH all avgone::code, avgone::year, avgone::month,
STORE results INTO 'mongodb://hostname:27017/test.all' USING com.mongodb.hadoop.pig.MongoInsertStorage('','');
存储为
"avgone::code":1,"avgone::year":2016.. and so on
我需要这样 -
code:1,year:2016....
这可能吗?
我试过了:
STORE results INTO 'mongodb://hostname:27017/test.all' USING com.mongodb.hadoop.pig.MongoInsertStorage('{code,year,month}','');
但我认为这样做是错误的。
谢谢!
答案 0 :(得分:1)
您可以使用AS关键字重命名FOREACH中的字段(更改架构):
results = FOREACH a GENERATE avgone::code AS code, avgone::year AS year, avgone::month AS month, ...