Wat zijn de voor- en nadelen van Apache Solr

Door Thomas van EldijkBijgewerkt op 5 mei 2024 0 Reacties

Je kunt Apache Solr gratis downloaden, installeren en koppelen. Vervolgens leest Apache Solr de data van jouw website uit, en kan het razendsnel de zoekopdrachten die jouw bezoekers uitvoeren terugkoppelen met goede resultaten.

Maar mijn CMS heeft toch al een zoekfunctie, waarom zou ik een aparte applicatie gebruiken?

Dat is waar. Bekende cms-en zoals Wordpress, Joomla en Drupal hebben allemaal een eigen zoekfunctie. Deze functionaliteit is enigszins beperkt en bezit niet de kracht die een aparte zoekapplicatie zoals Apache Solr wel heeft. Vooral als de website groter wordt (meer content bevat), zal het langer duren voordat er resultaten getoond worden.

Daarnaast biedt Apache Solr extra zoek- en filter mogelijkheden die de minder krachtige software van cms-en niet kunnen bieden. Denk aan complexe filters waarbij je relaties legt tussen verschillende filters, het direct tonen van items binnen de filters of het zoeken van termen binnen in .doc of .pdf documenten.

Voor wie is Apache Solr?

Meer vinden

Een van de grote voordelen van Apache Solr is dat het betere resultaten geeft, maar daar blijft het niet bij. Ook de filters waarmee je de zoekopdracht kunt verfijnen worden aangestuurd door Apache Solr.

Zo kun je bij Autotrack aangeven dat je een auto zoekt van het merk Alfa Romeo, en automatisch verandert de inhoud achter het filter ‘modellen’ naar 145, 147, etc.

Performance

Wanneer een website te groot wordt en de zoekopdracht te zwaar, ga je dit vanzelf merken doordat de tijd dat de website resultaten teruggeeft langer gaat duren. Elke zoekopdracht zorgt daarnaast voor een belasting voor de webserver, waardoor bezoekers die niet aan het zoeken zijn een tragere website ervaren.

Op dit punt biedt Apache Solr echt een uitkomst. Doordat de zoekapplicatie gescheiden wordt van de website kan het zich helemaal toeleggen op het optimaal inrichten van de zoekdatabase en het vinden van de juiste data. In de gevallen waarbij performance belangrijk is, of de bezoekersaantallen groot zijn in combinatie met veel content, kun je Apache Solr op een andere server installeren. Op die manier ontlast je de webserver, waardoor een snellere ervaring ontstaat voor alle bezoekers.

Hosting

Apache Solr is geen plug-in voor je website, maar een aparte applicatie die je, net als een website, ergens moet installeren en hosten.

Er zijn ‘hosted’ oplossingen zoals https://hostedapachesolr.com/ die uitkomst bieden als je een website moet ontwikkelen en er nog geen Apache Solr installatie aanwezig is. Daarnaast bieden platformen zoals Pantheon.io bij de duurdere pakketten Apache Solr aan als extra dienst.

Nadeel van deze ‘hosted’ oplossingen is dat je geen controle hebt over de Apache Solr-installatie. Aan de andere kant heb je dan geen omkijken naar het onderhoud. Bij een hosted oplossing weet je meestal niet precies weer de Apache Solr-applicatie gehost staat. Meestal in een cloudomgeving van Rackspace of Amazon. Voor sommige organisaties is dit geen optie, bijvoorbeeld wanneer er privégegevens opgeslagen worden in de database.

In dat geval zit er niets anders op dan de Apache Solr-applicatie op de webserver te installeren of een aparte server te huren en deze in te richten voor het hosten van Apache Solr. Dit brengt extra kosten met zich mee voor het opzetten, huren en onderhouden van de server.

Bij Emble bieden we managed servers aan voor Drupal en Laravel applicaties en op deze servers bieden we de hosting van Apache Solr aan. We helpen ook bij het updaten, koppelen en inrichten van Apache Solr.

Extra onderhoud

Wanneer je zelf de applicatie host, moet je het net als bij elke andere open source-applicatie goed onderhouden en moeten er regelmatig updates uitgevoerd worden. Ook kunnen aanpassingen binnen de website zorgen voor aanpassingen in de manier waarop Apache Solr gekoppeld is met de website.

ElasticSearch?

En dan is er een new kid in town. Nou ja, nieuw. ElasticSearch is er sinds 2010 en neemt een steeds groter marktaandeel in. Doordat het een nieuwer systeem is, werkt het moderner en spreekt het veel programmeurs aan om over te stappen.

Wij als websitemakers, kijken met name naar het gemak en de stabiliteit waarmee we een applicatie kunnen koppelen aan een cms als Drupal.

Wordpress is ook te koppelen aan Apache Solr. https://wordpress.org/plugins/wpsolr-search-engine/ Maar over het algemeen worden ‘grotere’ websites eerder ontwikkeld met Drupal dan met Wordpress. Hetzelfde geldt ook voor Joomla en er zijn, voor zover ik weet, geen extensies beschikbaar die Joomla koppelen aan Apache Solr.

Binnen Drupal zijn er ElasticSearch- en Apache Solr-koppelingen ontwikkeld maar Apache Solr is nog verreweg de meest gebruikte. Ter vergelijking: de module voor Apache Solr is ± 680.000 keer gedownload en die voor ElasticSearch ± 13.000 keer.

In de toekomst zou dit best wel eens kunnen veranderen. Zo geeft Google Trends weer dat de interesse in ElasticSearch inmiddels veel groter is en alleen maar toeneemt. Meer weten over ElasticSeach?

Wat kost Apache Solr?

De software is gratis te downloaden, maar het feit dat het gaat om een aparte applicatie die je naast je website moet installeren, koppelen, updaten en hosten, zorgt er voor dat je redelijk moet investeren om van Apache Solr gebruik te kunnen maken. Gemiddeld zien we dat het installeren en koppelen van je website aan Apache Solr eenmalig tussen de € 2000,- en € 5000,- kost. Het hangt hierbij af van de complexiteit van je zoekfilters, het aantal plekken waar binnen je website gezocht kan worden en de ervaring van de specialist die je inhuurt.

Het is verstandig binnen een budget ook rekening te houden met update- en onderhoudskosten en de kosten voor extra hosting resources.

Het is mogelijk om Apache Solr op dezelfde server als de website te installeren, en we zien dat redelijk veel organisaties met kleinere websites voor deze optie kiezen.

Het nadeel hiervan is dat de ‘load’ van beide applicaties (website en Apache Solr) gedeeld moeten worden op dezelfde server.

Samenvattend

Ook al is Apache Solr zelf gratis, de implementatie kost eenmalig voor extra ontwikkeltijd en budget. Maar Apache Solr zorgt voor betere zoekresultaten, biedt de bezoeker de mogelijkheid om gebruik te maken van complexere zoekfilters en zorgt voor een goede performance, zeker wanneer je veel of complexe content doorzoekbaar wilt maken.

Heb je vragen of opmerkingen over Apache Solr? Ik lees en beantwoord ze graag in het reactie gedeelte onderaan deze pagina.

Meer inzichten over Usability