23 OTT 2018

Elasticsearch: cos’è, come funziona e caratteristiche

Elasticsearch è un motore di ricerca basato su Lucene. Lucene è una API gratuita ed open source per il reperimento di informazioni ed è molto usata per la realizzazione dei motori di ricerca.

Elasticsearch, tramite interfacce web HTTP e documenti JSON, permette di interagire in maniera semplice col suo core ed effettuare ricerche full-text molto efficaci.

La mission di Elasticsearch parte da una convinzione di Shay Banon, il fondatore: “Search is something that any application should have”. Sulla base di questo credo, Banon ha lavorato per anni portando la sua azienda ai vertici della scena informatica mondiale.

 

Elasticsearch: sistema distribuito e scalabile

Oggi Elasticsearch è un sistema distribuito che scala orizzontalmente, basato su nodi a loro volta divisi in cluster. La comunicazione verso e da i cluster avviene attraverso delle REST API che sfruttano HTTP. Le applicazioni dei clienti che usano questo progetto possono essere scritte in qualsiasi linguaggio. L’architettura sottostante è ovviamente invisibile all’utente, che percepisce tutto come un’unica entità, sebbene la natura distribuita dello stack faccia sì che i processi siano interconnessi tra loro attraverso un continuo scambio di messaggi fra i nodi. Questi ultimi hanno dei compiti ben precisi che si dividono in autonomia, a seconda delle impostazioni che si dà ai vari load balancer. Nel caso in cui non bastino le risorse impostate allo start-up, Elasticsearch può “ampliare” la sua capacità elaborativa attivando nuovi nodi e creando nuovi cluster, in completa autonomia; da qui la sua natura scalabile.

Elasticsearch: utilizzo

Oggi grandissime aziende utilizzano Elasticsearch, come la Blizzard per l’analisi dei log e la NASA per elaborare in real time i dati provenienti dal Rover Curiosity, che passeggia su Marte.

Elasticsearch può essere utilizzato anche per i Big Data in quanto è una soluzione in grado di gestire grandi moli di dati ed è perfetto per le aziende che vogliono muovere i primi passi nel futuro dei Big Data.

 

Elasticsearch non è solo un motore di ricerca

Lo stack di Elasticsearch, oltre che dal motore di ricerca, è composto da:

  • Beats: una data shipper che sposta i dati dalle macchine agli altri componenti dello stack;
  • Logstash: parsa, trasforma e prepara i dati;
  • Kibana: interagisce con Elasticsearch, producendo analisi e visualizzandole su grafici, tabelle e mappe.

Redatto da Lucia D’Adamo in collaborazione con Antonello Rabuffi

Ultime News

Send this to a friend