Joel Bernstein created SOLR-6526:
------------------------------------
Summary: Solr Stream API
Key: SOLR-6526
URL: https://issues.apache.org/jira/browse/SOLR-6526
Project: Solr
Issue Type: New Feature
Components: clients - java
Reporter: Joel Bernstein
Fix For: 5.0
It would be great if there was a SolrJ library that could connect to Solr's
/export handler and perform streaming operations on the sorted result sets.
This ticket defines the base interfaces and implementations for the Streaming
API. The base API contains three classes:
*SolrStream*: This represents a stream from a single Solr instance. It speaks
directly to the /export handler and provides methods to read() Tuples and
close() the stream
*CloudSolrStream*: This represents a stream from a SolrCloud collection. It
speaks with Zk to discover the Solr instances in the collection and then
creates SolrStreams to make the requests. The results from the underlying
streams are merge inline to produce a single sorted stream of tuples.
*Tuple*: The data structure returned by the read() method of the SolrStream
API. It is nested to support grouping and Cartesian product set operations.
Once these base classes are implemented it paves the way to building
*decorator* streams that perform operations on the sorted Tuple sets. For
example a CollapseStream could be created:
{code}
CollapseStream collapseStream = new CollapseStream(new CloudSolrStream(zkHome,
queryRequest));
Tuple tuple = null;
while((tuple = collapseStream.read()) != null) {
}
{code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]