ElasticSearch or Solr? Which open-source search engine you should choose?

elasticsearch or solr

Now, you get started with your first search engine, and you are thinking about the free solution- open source to save budget. With big data and search problem, and you need to extract a lot of content based on data source, and understand the insights from the data, there are 2 options:Elasticsearch and Solr.

DB Engines

These 2 options are top 2 in search engine index. So, which one to choose as the best solution?

Depends on your project.

First, understand what you are building. Next, check which search engine could be the one. If you are wondering between an open source solution or a trading solution, you can check here to know top 10 criteria for evaluating a search engine.

Feature rundown

Existing time

In this case, Solr is older because Solr was released in 2004 by Yonik Seely from CNET Networks, then contributing to Apache on 2006. Elasticsearch was released on 2010 from Shay Bannon. So, Solr wins in this case.

Open source community

These 2 search engines are all very active. Check Github these are very popular open source projects with many releases.

Solr

Elasticsearch

Solr and Elasticsearch were all released under Apache but in a different way in contribution requests.

Documentation

Both Elasticsearch and Solr have very good docs. ES uses Github and Solr uses Atlassian Confuence.

Elasticsearch Reference Guide

Solr Reference Guide

Core technologies

Technically, ES and Solr are search engine and built by big guy Lucence

Java APIs and REST

ES has Rest API “Web 2.0” better than Solr but Solr has Java API better or SolrNet if you are .NET guy. ES has Nest and Elasticsearch.NET. REST API from Solr may be a bit less flexible but that is the perfect search engine that meet all you need: indexing and querying. ES calls JSON, so if you use JSON, ES is a good choice. Solr supports JSON as wel, but that is recently, before, Solr was for XML.

Content processing

Because both ES and Solr expose one API, you can easily index content from your app or existing app and even can be configured. For example, framework processing content Aspire can connect to many data source and post to both ES or Solr.

Solr also have one feature to extract text from binary files using Apcache Tika. So, you can upload one pdf via ExtractRequestHandler and Solr will do its part.

In other way, ES works well with Logstash, which can process data from any source and index that datasets.

Scalability

This is one of the most important feature to think.In this part, ES wins and Solr is still being controlled with Master-Slave.However, SolrCloud recently starts to join the community. With the support from Zookeeper, you can scale one Solr cluster easier and faster with old release from Solr with Master-Slave. Although it needs to be improved in the future, you can boost and search datasets with Solr.

Vendor support

Cloudera chooses Solr to integrate to open source CDH Cloudera Distribution including Hadoop. Besides, there are many vendors choose ES for there own solution.

Ecosystem

Solr focuses on text search. ES follows log analytics by creating Elastic stack for Elasticsearch, Logstash, Kibana and Beats. Both have a clear vision with a strong development.

Both are foundation of many platforms for search and popular big data, for example, ES is a part of Azure search of Microsoft and Solr is integrated with Cloudera Search.

Productivity

Both works stably.So, in most case, productivity does not matter if devs use it in an efficient way.

Web administration

Solr supports web administration and ES has many plugins(not free) for security, alert and monitor.Here is a list of product family of ES

Visualization

There are many ways to visualize data in Elasticsearch and Solr. You can build visualization dashboard or use visualization features from search engine. There is one thing to note: Solr focuses on text search, search apps.But ES follows different path, not only search but also solve log analytics and visualization.

Kibana 5

In sum, both Elasticsearch and Solr are great and popular open source search engines, supporting to get many things from data source. Depends on your project requirements to choose which tool is better for you.

Bonus free ebook to have the best choice !

— Via SearchTechnologies

Welcome. I write about technical stuff. @Software Developer