public abstract static class MongoDbIO.Write extends PTransform<PCollection<org.bson.Document>,PDone>
PTransform to write to a MongoDB database.name| Constructor and Description |
|---|
Write() |
| Modifier and Type | Method and Description |
|---|---|
PDone |
expand(PCollection<org.bson.Document> input)
Override this method to specify how this
PTransform should be expanded
on the given InputT. |
void |
populateDisplayData(DisplayData.Builder builder)
Register display data for the given transform or component.
|
MongoDbIO.Write |
withBatchSize(long batchSize)
Define the size of the batch to group write operations.
|
MongoDbIO.Write |
withCollection(java.lang.String collection)
Sets the collection where to write data in the database.
|
MongoDbIO.Write |
withDatabase(java.lang.String database)
Sets the database to use.
|
MongoDbIO.Write |
withKeepAlive(boolean keepAlive)
Sets whether socket keep alive is enabled.
|
MongoDbIO.Write |
withMaxConnectionIdleTime(int maxConnectionIdleTime)
Sets the maximum idle time for a pooled connection.
|
MongoDbIO.Write |
withUri(java.lang.String uri)
Define the location of the MongoDB instances using an URI.
|
getAdditionalInputs, getDefaultOutputCoder, getDefaultOutputCoder, getDefaultOutputCoder, getKindString, getName, toString, validatepublic MongoDbIO.Write withUri(java.lang.String uri)
The format of the URI is:
mongodb://[username:password@]host1[:port1],...[,hostN[:portN]]][/[database][?options]]
Where:
mongodb:// is a required prefix to identify that this is a string in the
standard connection format.username:password@ are optional. If given, the driver will attempt to
login to a database after connecting to a database server. For some authentication
mechanisms, only the username is specified and the password is not, in which case
the ":" after the username is left off as well.host1 is the only required part of the URI. It identifies a server
address to connect to.:portX is optional and defaults to :27017 if not provided./database is the name of the database to login to and thus is only
relevant if the username:password@ syntax is used. If not specified, the
"admin" database will be used by default. It has to be equivalent with the database
you specific with withDatabase(String).?options are connection options. Note that if database is absent
there is still a / required between the last host and the ?
introducing the options. Options are name=value pairs and the pairs are separated by
"&". The KeepAlive connection option can't be passed via the URI, instead
you have to use withKeepAlive(boolean). Same for the
MaxConnectionIdleTime connection option via
withMaxConnectionIdleTime(int).
public MongoDbIO.Write withKeepAlive(boolean keepAlive)
public MongoDbIO.Write withMaxConnectionIdleTime(int maxConnectionIdleTime)
public MongoDbIO.Write withDatabase(java.lang.String database)
public MongoDbIO.Write withCollection(java.lang.String collection)
public MongoDbIO.Write withBatchSize(long batchSize)
public PDone expand(PCollection<org.bson.Document> input)
PTransformPTransform should be expanded
on the given InputT.
NOTE: This method should not be called directly. Instead apply the
PTransform should be applied to the InputT using the apply
method.
Composite transforms, which are defined in terms of other transforms, should return the output of one of the composed transforms. Non-composite transforms, which do not apply any transforms internally, should return a new unbound output and register evaluators (via backend-specific registration methods).
expand in class PTransform<PCollection<org.bson.Document>,PDone>public void populateDisplayData(DisplayData.Builder builder)
PTransformpopulateDisplayData(DisplayData.Builder) is invoked by Pipeline runners to collect
display data via DisplayData.from(HasDisplayData). Implementations may call
super.populateDisplayData(builder) in order to register display data in the current
namespace, but should otherwise use subcomponent.populateDisplayData(builder) to use
the namespace of the subcomponent.
By default, does not register any display data. Implementors may override this method to provide their own display data.
populateDisplayData in interface HasDisplayDatapopulateDisplayData in class PTransform<PCollection<org.bson.Document>,PDone>builder - The builder to populate with display data.HasDisplayData