lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Joel Bernstein (JIRA)" <j...@apache.org>
Subject [jira] [Created] (SOLR-6526) Solr Stream API
Date Tue, 16 Sep 2014 15:34:34 GMT
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: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message