Over the past years i have been working with two amazing search tools, Solr (3 years ago) and last year with Elasticsearch.

So i would like to point some interesting articles about the two, to help you choose your tool. I will also show you some other useful tolls for Elasticsearch.

Both products are built on top of Lucene, an amazing tool, that works with inverted indexes and it’s search capabilities are amazing.

So if you need to pick one of those, probably both will solve your needs and you don’t need to worry too much. They are not performant, they are incredibly performant, and useful for problems such as search, recommendation, real time data, analytics and log analysis.

I will point two great articles with some comparisons about them, just to give you an idea of it.

My personal choice is Elasticsearch, why?

It’s more friendly;

It’s really easy to integrate and you can choose any programming language;

it’s nicer for distributed system and very easy to scale;

Percolators, are an awesome and useful feature;

it’s surrounded by a set of amazing tools such as Logstash, Kibana and some other open source administration tools.

Recently I have been working on a recommendation system that is built using elastic and that lead me too explore some other features besides search and it totally rocks!

It’s really versatile, performant and easy to explore. The Elasticserach DSL query language will probably your first headache when exploring more complex scenarios. The documentation is good but not very extensive about the DSL and you will probably feel the need for more information, but as soon as you understand the concepts and how you use it, it will be fairly easy.

Besides the main features of Elasticsearch you can also explore tools such as Logstash and Kibana. Logstash can let you search analyse your logs in really easy way and with Kibana you can built awesome reports.

Just give it a try and explore it! I am pretty sure that you gonna like it!!

Some other usefull tools and links for Elasticsearch: