ElasticSearch A Distributed RESTful Search Engine ElasticSearch is a distributed RESTful search engine built for the cloud. Features include: Distributed and Highly Available Search Engine. Each index is fully sharded with a configurable number of shards. Each shard can have one or more replicas. Read / Search operations performed on either one of the replica shard. Multi Tenant with Multi Types. Support for more than one index. Support for more than one type per index. Index level configuration (number of shards, index storage, ...). Various set of APIs HTTP RESTful API Native Java API. All APIs perform automatic node operation rerouting. Document oriented No need for upfront schema definition. Schema can be defined per type for customization of the indexing process. Reliable, Asynchronous Write Behind for long term persistency. (Near) Real Time Search. Built on top of Lucene Each shard is a fully functional Lucene index All the power of Lucene easily exposed through simple configuration and plugins. Per operation consistency Single document level operations are atomic, consistent, isolated and durable. This script requires a 'elasticsearch' user/group to exist before running. The recommended UID/GID is 280. You can create these like so: groupadd -g 280 elasticsearch useradd -u 280 -g elasticsearch -s /bin/sh elasticsearch