ElasticSearch is a distributed search framework and is built on top of lucene.
ElasticSearch removes the complexity of dealing with lucene api and exposes simple Java and REST interfaces which can be used to index and search documents.
This has certain features which differentiates it from other related search technologies:
1. Document Store - It comes with an out-of-box No-SQL document store, so you don't need to hook another data store in order to perform the search.
2. Distributed - Documents can distributes over a number of nodes which does load-balancing as well fail-over. But, all these are transparent for the user.
3. Simple cluster setup - Cluster setup doesn't require you to do much configuration. Nodes with same "cluster_name" in "elasticsearch.yml" joins the same cluster automatically.
4. Fast - This is fast because of the fact that every field is indexed and searchable.
5. Multiple API interfaces - You can use Java API as well as REST API for indexing as well as search. There are APIs available for other languages as well.
6. Scalable - It can be scaled to thousands of servers.
Note - ElasticSearch assumes that primary database for application is different and you index the data in elasticsearch to make it searchable.
No comments:
Post a Comment