lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Joel Bernstein (JIRA)" <>
Subject [jira] [Commented] (SOLR-6266) Couchbase plug-in for Solr
Date Fri, 19 Sep 2014 17:19:35 GMT


Joel Bernstein commented on SOLR-6266:

I reviewed Karol's contribution today, it looks great. Let's use this as our base implementation.

It looks like Karol has worked out a lot of details of how to embed the Couchbase API's and
handle documents. This is excellent.

I think we need to take a step back and do some planning around two areas before iterating
on what's here.

1) SolrCloud architecture. Some questions to think about:

How does the plugin work in the context of single collection?  Should it run in all replicas
or just leaders?

How does the plugin work in the context of multiple collections sharing the same Solr nodes?
Should there be a different CAPIServer running for each collection? Or should there be a CAPIServer
per Solr node?

2) Error handling. We'll need to understand the different failure scenarios and have strategies
for handling them. And we'll need to fully understand how the Couchbases API's account for
failure scenarios.

I'll need to catch up on the Couchbase API's before I can weigh-in on these issue. I should
have time to review the API's next week. In the meantime if anyone has any thoughts fire away.

> Couchbase plug-in for Solr
> --------------------------
>                 Key: SOLR-6266
>                 URL:
>             Project: Solr
>          Issue Type: New Feature
>            Reporter: Varun
>            Assignee: Joel Bernstein
>         Attachments: solr-couchbase-plugin.tar.gz
> It would be great if users could connect Couchbase and Solr so that updates to Couchbase
can automatically flow to Solr. Couchbase provides some very nice API's which allow applications
to mimic the behavior of a Couchbase server so that it can receive updates via Couchbase's
normal cross data center replication (XDCR).
> One possible design for this is to create a CouchbaseLoader that extends ContentStreamLoader.
This new loader would embed the couchbase api's that listen for incoming updates from couchbase,
then marshal the couchbase updates into the normal Solr update process. 
> Instead of marshaling couchbase updates into the normal Solr update process, we could
also embed a SolrJ client to relay the request through the http interfaces. This may be necessary
if we have to handle mapping couchbase "buckets" to Solr collections on the Solr side. 

This message was sent by Atlassian JIRA

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message