Elastic Search vs RavenDB


(CoGo) #1

Hello,
I'm searching for a good search server solution and are considering
the advantages and disadvantages of Elastic Search. I will use RavenDB
to store the raw, general data and have heard a lot of good things
about RavenDB's searching capabilities...

Since I have to use RavenDB to store the data in the first place, is
it worth it to combine it with elastic search for more advanced search
options? "Percolation" in elastic search is a feature in my
application that will be crucial so if I decide to only go for RavenDB
I need to know that a equivalent feature does exist.


(Ævar Arnfjörð Bjarmason) #2

On Wed, May 30, 2012 at 3:07 PM, CoGo andre.hegge@gmail.com wrote:

Hello,
I'm searching for a good search server solution and are considering
the advantages and disadvantages of Elastic Search. I will use RavenDB
to store the raw, general data and have heard a lot of good things
about RavenDB's searching capabilities...

Since I have to use RavenDB to store the data in the first place, is
it worth it to combine it with elastic search for more advanced search
options? "Percolation" in elastic search is a feature in my
application that will be crucial so if I decide to only go for RavenDB
I need to know that a equivalent feature does exist.

You want to know if RavenDB has a feature analogous to percolation?
Wouldn't that be better asked on a RavenDB mailing list?


(Ivan Brusic) #3

I know very little about RavenDB, so I just looked it up.

RavenDB uses Lucene underneath the cover. The RavenDB provides an ORM
layer to create queries, but also allows query in the standard Lucene
query parser syntax. It is unclear how they achieve faceted search
(there are several libraries for Lucene).

What is especially unclear is how RavenDB implements sharding for
search. ElasticSearch provides several ways to distribute Lucene
queries and documents. Are the lucene indices sharded in RavenDB or is
it a full-replica. Not sure what the main storage engine is (also
Lucene?)

Coupling RavenDB with ElasticSearch seems to be an overkill and I
would only implement that strategy if I really really really needed a
feature (Percolation). Complex architectures require too much work to
maintain.

ElasticSearch appears to have more features, but it lacks the ORM
layer. I would spend time writing my own layer and not writing code
around integrating two similar products.

Cheers,

Ivan

On Wed, May 30, 2012 at 6:07 AM, CoGo andre.hegge@gmail.com wrote:

Hello,
I'm searching for a good search server solution and are considering
the advantages and disadvantages of Elastic Search. I will use RavenDB
to store the raw, general data and have heard a lot of good things
about RavenDB's searching capabilities...

Since I have to use RavenDB to store the data in the first place, is
it worth it to combine it with elastic search for more advanced search
options? "Percolation" in elastic search is a feature in my
application that will be crucial so if I decide to only go for RavenDB
I need to know that a equivalent feature does exist.


(system) #4