Class SolrIO
Reading from Solr
SolrIO.read()
returns a bounded PCollection<SolrDocument>
representing Solr documents.
To configure the read()
, you have to provide a connection configuration
containing the Zookeeper address of the Solr cluster, and the collection name. The following
example illustrates options for configuring the source:
SolrIO.ConnectionConfiguration conn = SolrIO.ConnectionConfiguration.create("127.0.0.1:9983");
// Optionally: .withBasicCredentials(username, password)
PCollection<SolrDocument> docs = p.apply(
SolrIO.read().from("my-collection").withConnectionConfiguration(conn));
You can specify a query on the read()
using withQuery()
.
Writing to Solr
To write documents to Solr, use SolrIO.write()
, which writes Solr
documents from a PCollection<SolrInputDocument>
(which can be bounded
or unbounded).
To configure SolrIO.write()
, similar to the read, you have to provide a
connection configuration, and a collection name. For instance:
PCollection<SolrInputDocument> inputDocs = ...;
inputDocs.apply(SolrIO.write().to("my-collection").withConnectionConfiguration(conn));
When writing it is possible to customize the retry behavior if an error is encountered. By default this is disabled and only one attempt will be made.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
A POJO describing a connection configuration to Solr.static class
APTransform
reading data from Solr.static class
static class
A POJO describing a replica of Solr.static class
A POJO encapsulating a configuration for retry behavior when issuing requests to Solr.static class
APTransform
writing data to Solr. -
Method Summary
Modifier and TypeMethodDescriptionstatic SolrIO.Read
read()
static SolrIO.ReadAll
readAll()
static SolrIO.Write
write()
-
Method Details
-
read
-
readAll
-
write
-