elasticsearch | |
---|---|
Tip de | Căutare și indexare |
Autor | Shai Banon [d] |
Dezvoltator | Shay Beynon |
Scris in | Java |
Sistem de operare | Multiplatformă |
Prima editie | 8 februarie 2010 |
Platformă hardware | Mașină virtuală Java |
ultima versiune |
|
Stat | Activ |
Licență | Licență Elastic Dual (proprietă; sursă disponibilă) și licență publică server (proprietă; sursă disponibilă) |
Site-ul web | elastic.co/products/elasticsearch |
Fișiere media la Wikimedia Commons |
Elasticsearch este un motor de căutare software replicat , de la mijlocul anilor 2010, cel mai popular din categoria sa [2] . Scrisă în Java , distribuită sub licența SSPL ( ing. Server Side Public License ; oferind deschidere , dar nu considerată gratuită ), se bazează pe biblioteca Lucene (precum și pe al doilea cel mai popular motor de căutare - Solr ), clienții oficiali sunt disponibil în PHP , Java , .NET ( C# ), Python , Groovy și alte câteva limbi.
Dezvoltat de Elastic împreună cu proiectele conexe - motorul de colectare și analiză a datelor Logstash și platforma de analiză și vizualizare Kibana ; aceste trei produse sunt concepute pentru a fi utilizate ca o soluție integrată numită „Elastic Stack” ( ELK ).
Principalele site-uri care utilizează Elasticsearch includ Wikimedia , StumbleUpon , Quora , Foursquare , SoundCloud , GitHub și Netflix . Amazon , IBM , Qbox și Elastic oferă Elasticsearch ca un serviciu gestionat abonaților [3] [4] , majoritatea acestor servicii publice gestionate de cloud includ și suport pentru Kibana [5] .
În 2004, Shay Banon a creat predecesorul lui Elasticsearch, sistemul Compass [6] . La dezvoltarea celei de-a treia versiuni a Compass, Beynon a ajuns la concluzia că, pentru a crea o versiune scalabilă a sistemului, este necesar să se creeze un program de la zero, ca urmare, în februarie 2010, a fost lansată prima versiune a Elasticsearch. [7] .
Pentru a comercializa proiectul, Beynon a fondat compania olandeză Elasticsearch BV în 2012 [8] . În iunie 2014, compania a anunțat că a strâns 70 de milioane de dolari într-o rundă de finanțare din seria C condusă de New Enterprise Associates ( NEA ), cu sponsori suplimentari de la Benchmark Capital și Index Ventures , rezultând o rundă totală de finanțare de 104 de milioane de dolari pentru firmă [ 9] .
În martie 2015, Elasticsearch și-a schimbat numele în Elastic [10] .
Oferă căutare scalabilă pe orizontală , acceptă multithreading . Indicii de căutare pot fi împărțiți în shard-uri, fiecare shard poate avea mai multe replici, fiecare nod poate găzdui mai multe shard-uri, fiecare nod acționând ca un coordonator pentru a delega operațiunile shard-ului corect, reechilibrarea și rutarea se fac automat. Datele înrudite sunt adesea stocate în același index, care constă din una sau mai multe fragmente primare și, eventual, mai multe replici. Odată creat un index, numărul de fragmente primare nu poate fi schimbat [11] .
Toate funcțiile sistemului Lucene sunt disponibile prin intermediul API-urilor JSON și Java .
O altă caracteristică este așa-numita „gateway”, care asigură păstrarea pe termen lung a indexului; de exemplu, indexul poate fi restaurat de la gateway în cazul unei defecțiuni a serverului. Sistemul acceptă solicitări GET în timp real . Sistemul nu suportă tranzacții distribuite [12] .
Versiunea comercială a motorului de căutare are o serie de caracteristici care nu sunt incluse în versiunea gratuită a programului, inclusiv un model de urmat pentru utilizatori, un mecanism de notificare a utilizatorilor despre evenimentele din sistem, învățare automată și motoare de analiză grafică. Partea plătită vine sub forma unui abonament anual.