DSE does now have a queue to decouple Cassandra insert and Solr indexing. It will block only when/if the queue is filled - you can configure the size of the queue. So, to be clear, DSE no longer has the highlighted problem mentioned for ES.
-- Jack Krupansky On Wed, Jan 7, 2015 at 9:46 AM, Ken Hancock <ken.hanc...@schange.com> wrote: > When last I looked at Datastax Enterprise (DSE 3.0ish), it exhibits the > same problem that you highlight, no different than your good idea of > asynchronously pushing to ES. > > Each Cassandra write was indexed independently by each server in the > replication group. If a node timed out or a mutation was dropped, that > Solr node would have an out-of-sync index. Doing a solr query such as > count(*) users could return inconsistent results depending on which node > you hit since solr didn't support Cassandra consistency levels. > > I haven't seen any blog posts or docs as to whether this intrinsic > mismatch between how Cassandra handles eventual consistency and Solr has > ever been resolved. > > Ken > > > On Wed, Jan 7, 2015 at 9:05 AM, DuyHai Doan <doanduy...@gmail.com> wrote: > >> Be very very careful not to perform blocking calls to ElasticSearch in >> your trigger otherwise you will kill C* performance. The biggest danger of >> the triggers in their current state is that they are on the write path. >> >> In your trigger, you can try to push the mutation asynchronously to ES >> but in this case it will mean managing a thread pool and all related issues. >> >> Not even mentioning atomicity issues like: what happen if the update to >> ES fails or the connection times out ? etc ... >> >> As an alternative, instead of implementing yourself the integration with >> ES, you can have a look at Datastax Enterprise integration of Cassandra >> with Apache Solr (not free) or some open-source alternatives like Stratio >> or TupleJump fork of Cassandra with Lucene integration. >> >> On Wed, Jan 7, 2015 at 2:40 PM, Asit KAUSHIK <asitkaushikno...@gmail.com> >> wrote: >> >>> HI All, >>> >>> We are trying to integrate elasticsearch with Cassandra and as the river >>> plugin uses select * from any table it seems to be bad performance choice. >>> So i was thinking of inserting into elasticsearch using Cassandra trigger. >>> So i wanted your view does a Cassandra Trigger impacts the performance >>> of read/Write of Cassandra. >>> >>> Also any other way you guys achieve this please guide me. I am struck on >>> this . >>> >>> Regards >>> Asit >>> >>> >> > > > >