[
https://issues.apache.org/jira/browse/BEAM-12400?focusedWorklogId=611724&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-611724
]
ASF GitHub Bot logged work on BEAM-12400:
-----------------------------------------
Author: ASF GitHub Bot
Created on: 16/Jun/21 03:29
Start Date: 16/Jun/21 03:29
Worklog Time Spent: 10m
Work Description: pareshsarafmdb commented on a change in pull request
#14927:
URL: https://github.com/apache/beam/pull/14927#discussion_r652322951
##########
File path:
sdks/java/io/mongodb/src/main/java/org/apache/beam/sdk/io/mongodb/MongoDbIO.java
##########
@@ -106,6 +109,28 @@
* .withNumSplits(30))
*
* }</pre>
+ *
+ * *
+ *
+ * <p>To configure a MongoDB sink and update, you must specify a connection
{@code URI}, a {@code
+ * Database} * name, a {@code Collection} name. It matches the key with _id in
target collection.
+ * For instance: * *
+ *
+ * <pre>{@code
+ * * pipeline
+ * * .apply(...)
+ * * .apply(MongoDbIO.write()
+ * * .withUri("mongodb://localhost:27017")
+ * * .withDatabase("my-database")
+ * * .withCollection("my-collection")
+ * * .withIsUpdate(true)
+ * * .withUpdateKey("key-to-match")
+ * * .withUpdateField("field-to-update")
+ * * .withUpdateOperator("$set")
+ * * .withNumSplits(30))
Review comment:
Hi Pablo. Thanks for the inputs. I thought the same. But I am confused
how the actual values come in? With the single field update whatever value
comes in from the pipeline will be set as the value for the field. Now if we
have to update for multiple fields how it can be done ? I am not pretty sure
how it works in beam. Hope my question is clear.
Upserts functionality can definitely be added.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 611724)
Remaining Estimate: 167h 20m (was: 167.5h)
Time Spent: 40m (was: 0.5h)
> Improve MongoDBIO for beam - add update capability
> --------------------------------------------------
>
> Key: BEAM-12400
> URL: https://issues.apache.org/jira/browse/BEAM-12400
> Project: Beam
> Issue Type: Improvement
> Components: io-java-mongodb
> Reporter: Paresh Saraf
> Assignee: Paresh Saraf
> Priority: P2
> Original Estimate: 168h
> Time Spent: 40m
> Remaining Estimate: 167h 20m
>
> Right now mongodbio supports only inserts/overwrites to a collections. In
> many cases it will be usually updating an existing document: setting a field
> or pushing into an array. BulkUpdate capability to be added as part part of
> MongoDBIo->Write
--
This message was sent by Atlassian Jira
(v8.3.4#803005)