Lamp Aan
Basic Orange kennistip #17

Goed zoeken is een rekbaar begrip

Basic Orange kennistip #17

Elasticsearch maakt zoeken sneller en beter, maar dat niet alleen!

“Wie op Tinder een afspraakje versiert, daarna een Uber pakt naar zijn of haar ‘Netflix & Chill-date’, en eerst op Volkskrant.nl de beste series en films van het moment heeft uitgezocht, heeft al vier keer gebruik gemaakt van de zoekmachine van Elastic,” - J. Witteman. Nieuwsgierig wat Elasticsearch is en hoe je het voor je website in zet? Lees dan snel verder!

widget.Title

Wat is Elasticsearch?

Elasticsearch is een open source software van de firma Elastic, waarmee grote hoeveelheden data op slimme wijze worden geïndexeerd, waarna ze snel doorzocht, geanalyseerd en weergegeven worden. Deze open source tool op basis van full-text-search maakt de implementatie van de zoekfunctionaliteit makkelijker, efficiënter en schaalbaar. Ook kun je de geïndexeerde data verrijken met gegevens uit andere bronnen. Elasticsearch is al actief sinds 2010 en is mede in Amsterdam ontwikkeld.

De vijf voordelen van Elasticsearch

  1. Snellere en schaalbare presentatie van content.
  2. Relevantere zoekresultaten in je zoekmachine.
  3. Bied zoekresultaten aan op basis van relevantie. Dit is handig voor intelligente productsuggesties op webshops.
  4. Rekening houden met typfouten, stopwoorden, synoniemen en auto-complete.
  5. Indexeer verschillende soorten data, zelfs PDF’s.

Hoe werkt Elasticsearch?

De Elastic Server kun je op je website installeren. Op je server wordt dan een index gecreëerd van je (web)database. Een index is een grote tekstfile met alle relevante data. Met behulp van een index kun je sneller data doorzoeken in een database. Dit is zeker het geval met grotere databases met nieuwsartikelen, voorstellingen of producten. De index zorgt ervoor dat (periodiek) de inhoud en de locatie van je records wordt vastgelegd op basis van de velden die voor jou relevant zijn. De volgende keer dat een bezoeker van je site deze informatie opvraagt, weet de Elastic index deze direct terug te vinden. Informatie uit Elasticsearch halen is dus vele malen sneller dan elke keer rechtstreeks filteren vanuit de database.

Elasticsearch in de praktijk

Agenda en filtering
Wij hebben bijvoorbeeld Elasticsearch geïntegreerd in het nieuwe platform van de culturele instellingen in Alkmaar, waaronder Theater de Vest. Voor deze sites zijn de voorstellingslijsten erg belangrijk. De agenda, genrelijsten en nieuwsitems worden met behulp van Elastic gekoppeld aan relevante informatie uit plannings- en ticketingsoftware. Daarnaast kun je via de zoekmachine snel filteren op genre of zoektermen en worden pagina’s snel op de website gepresenteerd. Verder is met behulp van de index een infinite scroll geïntegreerd op de agenda pagina’s. Hierdoor wordt tijdens het scrollen steeds nieuwe informatie aan de agenda toegevoegd, in plaats van een paginering waarbij je moet klikken op de volgende 10 voorstellingen.

Publicatiedatabank
Een ander voorbeeld waar we Elasticsearch hebben geïntegreerd, is het Nederlands Kanker Instituut. De website van NKI bevat ruim 6000 publicaties welke aan de website gekoppeld worden via een extern publicatiedatabank. Ook hier wordt via de Elastic index file de zoekfunctie in de publicaties razendsnel gevoed met de publicaties.

widget?.Image.Name

Voor wie is Elasticsearch relevant?

Elasticsearch is relevant voor iedereen met een website die veel data heeft en deze snel wil filteren, zoeken en presenteren. Daarnaast zorgt Elastic voor een buffer: de data is altijd opgeslagen op de server, ook wanneer de connectie met de onderliggende database vertraagd is.

Deze tip is een onderdeel van de reeks praktische online kennistips van Basic Orange. Blijf op de hoogte van alle ontwikkelingen via ons Facebook of LinkedIn kanaal.

Bas

Wil je weten hoe we Elasticsearch optimaal kunnen toepassen voor jouw website?

Ik vertel je er graag meer over.

Bas Hessels Lead developer bij Basic Orange
Klanten

Onze tips worden ook zeer gewaardeerd door: