gpt4 book ai didi

java - 使用 Java-Hadoop 连接器更新 MongoDB 中的现有集合

转载 作者:可可西里 更新时间:2023-11-01 10:01:25 25 4
gpt4 key购买 nike

是否可以用新数据更新现有的 MongoDB 集合。我正在使用 hadoop 作业将数据读写到 Mongo。所需的场景是:-假设 Mongo 中的第一个集合是

{ 
"_id" : 1,
"value" : "aaa"
"value2" : null
}

从Mongo中读取数据并处理数据后,MongoDB应该包含

{ 
"_id" : 1,
"value" : "aaa"
"value2" : "bbb"
}

如果可能,请提供一些虚拟代码。

最佳答案

BasicBSONObject query=new BasicBSONObject();
query.append("fieldname", value);
BasicBSONObject update=new BasicBSONObject();

update.append("$set", new BasicBSONObject().append("newfield",value));
MongoUpdateWritable muw=new MongoUpdateWritable(query,update,false,true);
contex.write(key, muw);

查询:用于提供条件(匹配条件)。

update :用于在现有集合中添加新字段和值。

MongoUpdateWritable:第三个参数是upsert值(同mongodb)

第四个参数是集合中多个文档的多次更新。

在Driver类中设置 job.setOutputValueClass(MongoUpdateWritable.class);

关于java - 使用 Java-Hadoop 连接器更新 MongoDB 中的现有集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10817265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com