Pplware

Elasticsearch: Pesquise e analise os seus dados em tempo real

Ao longo dos últimos anos têm aparecido um conjunto de ferramentas bastante interessantes que se adaptam aos “novos” modelos de desenvolvimento de software e construção de plataformas.

Com o constante aumento de informação digital, o tão falado Big Data, é necessário possuir também ferramentas capazes de pesquisar e analisar rapidamente esses dados e apresentar quase de forma instantânea resultados. Uma dessas ferramentas chama-se Elasticsearch! Vamos conhecer melhor esta ferramenta.


O Elasticsearch é um motor distribuído moderno, baseado no Apache Lucene, para pesquisa e análise eficiente de grande quantidade de dados. Foi desenvolvido por Shay Banon em 2010, na linguagem de programação Java, e disponibilizado sobre os termos Apache License.

Esta plataforma é altamente escalável e permite que o utilizador combine vários tipos de pesquisas, sendo que os dados também podem ser de vários tipo (ex. dados estruturados, não estruturados, geo, métricas, etc).

Características interessantes do Elasticsearch

Conceitos básicos do Elasticsearch

Quem usa o Elasticsearch tem de conhecer alguns conceitos básicos desta ferramenta para perceber como tudo funciona.

Cluster

Um cluster é uma coleção de um ou mais nós (máquinas) que juntos mantêm os dados consistentes e fornecem recursos de indexação e pesquisa.Um cluster é identificado por um nome exclusivo que, por padrão, é “elasticsearch”. Esse nome é importante porque um nó só pode fazer parte de um cluster.

Node (Nó)

Um nó é um servidor que faz parte do cluster, armazena os dados e participa no processo de indexação e pesquisa do cluster. Tal como um cluster, um nó é identificado por um nome. Por padrão o nome é um Universally Unique IDentifier (UUID) aleatório atribuído no arranque do nó mas o utilizador pode alterar o nome de um nó.

Índices, Tipos, documentos

Fazendo uma analogia ao que existe numa base de dados podemos referir que os índices são as bases de dados (conjunto de documentos com características semelhantes). Por exemplo podemos um índice para os dados dos clientes, outro índice para o catálogo de produtos e outro índice, por exemplo, para encomendas. Um índice é definido por um nome.

Os Tipos são como as tabelas. Os documentos são os registos, ou seja a informação que pode ser indexada. Podemos ter um documento para um cliente, para um produto,  ou para uma encomenda. Os campos são as colunas das tabelas.

O Elasticsearch tem ainda suporte para um conjunto vasto de linguagens de programação, das quais se destacam:

O Elasticsearch é utilizado por empresas como, por exemplo, a Google, GitHub, Twitter, SoundCloud, Yelp e Foursquare. Num próximo artigo iremos ensinar a instalar esta poderosa plataforma.

Leia também…

Exit mobile version