Elasticsearch on käytännöllinen sellaisissa tapauksissa, joissa hakukoneen käyttäjä tarvitsee hieman yleistietoa älykkäämpää ja spesifimpää hakuratkaisua. Hakukone perustuu Apache Lucene -hakukonekirjastoon, jonka käyttö itsessään on suhteellisen monimukaista. Elasticsearch onkin rakennettu sen ympärille tehostamaan ja helpottamaan hakukoneominaisuuksien käyttöä esimerkiksi skaalautuvuuden ja rajapintojen rakentamisen myötä. Sovellus on siis tarvittavan tekniikan sisältävä työkalu, joka pyörii loppukäyttäjän käyttämän hakukonepalvelun taustalla.
Tässä blogitekstissä tarkastellaan,
Elasticsearch on itseasiassa suuri tuoteperhe, joka sisältää runsaasti ratkaisumahdollisuuksia koneoppimisesta data-analytiikkaan. Sen nopeus ja skaalautuvuus sekä kyky indeksoida monenlaista sisältöä mahdollistavat kattavan määrän erilaisia käyttötapauksia. Niitä ovat esimerkiksi
Eri hakukoneiden erot perustuvatkin juuri niiden käyttötarkoitukseen eli siihen, mitä hakukoneella lopulta halutaan hakea.
Siinä missä esimerkiksi Googlella kuka tahansa verkon käyttäjä voi hakea yleistietoa tarvitsemaansa pulmaan, Elasticsearchin päälle rakennettu hakukone voidaan indeksoida tarkasti määriteltyä hakutarkoitusta varten. Hakukoneella voidaan siis tehdä räätälöidympiä ratkaisuja, joita yritykset ja organisaatiot voivat käyttää pohjana vain oman alansa sisältöjen hakuun.
Periaatteessa kevyin käyttötarkoitus Elasticsearchille on vaikkapa verkkosivuston tai -palvelun haku, mutta se tarjoaa mahdollisuudet myös huomattavasti raskaampiin tarkoituksiin. Esimerkkinä raskaammasta hausta on jostain prosessista kerättävä data, josta halutaan tehdä analyyseja tai hakuja: vaikkapa teollisuudessa hakukoneen avulla voidaan indeksoida koneiden sensoriarvoja ja tehdä niiden perusteella hakuja siitä, miten jokin prosessi on toiminut ja miten sitä voidaan kehittää. Haun kohteena voi olla myös yksi verkkosivusto tai tuhansia sivustoja, eli hakukoneen rajoitteena ei ole edes suorituskyky – tärkeää onkin pikemminkin sen selkeyttäminen, mitä koneen halutaan tekevän.
Elasticsearchin päälle voidaan rakentaa myös esimerkiksi chat-botti, jolloin käyttäjä kirjoittaa hakulauseensa bottiin ja vastaus haetaan palvelua varten rakennetusta indeksistä. Hakukoneen voi myös valjastaa geospatiaaliseen käyttöön, eli koneella voidaan hakea esimerkiksi tietylle kadulle tai postinumeroalueelle kohdistuvia asioita, kuten vaikkapa kaupungin tekemiä päätöksiä. Kaikkiaan mitä tahansa tietoa, jota halutaan helposti löydettäväksi ja analysoitavaksi, voidaan indeksoida Elasticsearchilla.
Elasticsearch
Elasticsearch loistaa hakukonevertailussa monikäyttöisyydellään, ja muihin vastaaviin hakukoneisiin nähden sillä pystytään tekemään hakuja sekä tehokkaammin että pienemmillä kustannuksilla.
Työkalun korkeimman potentiaalin saavuttaminen vaatii kuitenkin huomattavasti osaamista. Elasticsearchin avulla kuka tahansa saa siis tehtyä nopeasti ja suhteellisen vaivattomasti hakukonepalvelun, joka toimii pääpiirteittäin kuten odotetaan, mutta haun optimoiminen täsmällisesti oikeita ja juuri ihmisten haluamia tuloksia varten vaatii teknistä ymmärrystä.
Kilpailijoihin verrattuna hakukone on lisäksi vaivaton ja nopeakäyttöinen. Joidenkin kilpailijahakukoneiden konfigurointi niin, että hakukoneella saadaan haettua ylipäätään mitään, voi vaatia viikkotolkulla töitä; Elasticsearchin käyttöönotto on siihen nähden hyvinkin ripeää, vaikka hakujen optimointi vaatii toki myös sillä jonkin verran tekemistä.
Myös hakukoneen suorituskyky on kilpailijoitaan parempi. Elasticsearch on klusteroitu niin, että sitä voidaan pyörittää useilla tietokoneilla ja skaalata käytännössä kuinka suureksi tahansa. Tämä tarkoittaa, että suorituskykyä saadaan lisää asentamalla palvelun käyttöön lisää uusia tietokoneita. Myös koneoppiminen, datan analysointi ja jalostus sekä muut kyvykkyydet ovat syitä siihen, miksi Elasticsearch on hyvinkin varteenotettava ratkaisu, kun hakukoneista halutaan saada kaikki irti.
Näillä ominaisuuksilla Elasticsearch päihittää kilpailijansa