


Como funciona o Elastic search?
​
O Elastic Search (link da empresa) é uma ferramenta para buscas de código aberto (opensource), que tem capacidade para tratar de grandes quantidades de dados em tempo real. Ela é utilizada por empresas como Google, GitHub, Twitter, SoundCloud, Yelp e Foursquare, por exemplo.
​
Desenvolvido por Shay Bannon em 2010, o servidor de buscas distribuído é baseado em Apache Lucene e desenvolvido em java, utilizando uma interface comum — JSON sobre HTTP. Ele possui clientes para as principais linguagens de programação e foi desenvolvido do zero com o objetivo de ser utilizado e distribuído em clusters. A ferramenta escalável é ideal para trabalhar com BigData.
​
Uma das features mais utilizadas é a filter, que utiliza cache para realizar buscas repetidas. Ao realizar uma busca que já foi feita antes, a ferramenta já sabe onde estão os documentos — o que garante muita velocidade para a realização de buscas por valores exatos. Já na busca por querys, é possível ranquear os resultados por relevância e ocasionar em mais facilidade para os usuários.
​
Entre as principais vantagens da engine de pesquisa full-text estão a disponibilidade de dados em tempo real (near-real-time), a alta disponibilidade para tratar de grandes volumes de dados e o armazenamento de dados em forma de documentos.
​
Além disso, possui diversos outros recursos como geolocalização e analytics. Ou seja, é uma poderosa e flexível ferramenta que apresenta um conjunto robusto de APIs e DSLs de consultas.
​