pig输出到mongodb-重命名字段

qvsjd97n  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(435)

我一直在编写一些代码,以便使用mongodbhadoop连接器从pig生成数据并将其馈送到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}','');

但我认为这样做是错误的。
谢谢!

vs3odd8k

vs3odd8k1#

您可以使用as关键字重命名foreach中的字段(更改架构):

results = FOREACH a GENERATE avgone::code AS code, avgone::year AS year, avgone::month AS month, ...

相关问题