what is elasticsearch?
distributed RESTful search and analytics
Real time data
Data flows into your system all the time. The question is … how quickly can that data become an insight? With Elasticsearch, real-time is the only time.
Elasticsearch allows you to start small, but will grow with your business. It is built to scale horizontally out of the box. As you need more capacity, just add more nodes, and let the cluster reorganize itself to take advantage of the extra hardware.
A cluster can host multiple indices which can be queried independently or as a group. Index aliases allow you to add indexes on the fly, while being transparent to your application.
Store complex real world entities in Elasticsearch as structured JSON documents. All fields are indexed by default, and all the indices can be used in a single query, to return results at breath taking speed.
Elasticsearch allows you to get started easily. Toss it a JSON document and it will try to detect the data structure, index the data and make it searchable. Later, apply your domain specific knowledge of your data to customize how your data is indexed.
Elasticsearch puts your data safety first. Document changes are recorded in transaction logs on multiple nodes in the cluster to minimise the chance of any data loss.
Build on top of Apache Lucene ™
Apache Lucene is a high performance, full-featured Information Retrieval library, written in Java. Elasticsearch uses Lucene internally to build its state of the art distributed search and analytics capabilities.
Real time analytics
Search isn’t just free text search anymore – it’s about exploring your data. Understanding it. Gaining insights that will make your business better or improve your product.
Elasticsearch clusters are resilient – they will detect and remove failed nodes, and reorganize themselves to ensure that your data is safe and accessible.
Full text search
Elasticsearch uses Lucene under the covers to provide the most powerful full text search capabilities available in any open source product. Search comes with multi-language support, a powerful query language, support for geolocation, context aware did-you-mean suggestions, autocomplete and search snippets.
Optimistic version control can be used where needed to ensure that data is never lost due to conflicting changes from multiple processes
Elasticsearch is API driven. Almost any action can be peformed using a simple RESTful API using JSON over HTTP. An API already exists in the language of your choice.
Apache 2 Open Source License
Elasticsearch can be downloaded, used and modified free of charge. It is availble under the Apache 2 licenese, one of the most flexible open source licenses available.
Download and unzip the latest Elasticsearch distribution
Run bin/elasticsearch -f on Unix,
or bin/elasticsearch.bat on Windows
Run curl -X GET http://localhost:9200/