Hartman Gids

Apache Lucene

Bedrijfsgegevens

Naam

Apache Lucene

Jaar van oprichting

1998

Website

http://lucene.apache.org/java

Contact

Oorsprong

Verenigde Staten

Grootte organisatie

30+ committers

Implementatiepartners

Positionering

Defacto standaard Open Source Enterprise Search oplossing

Productgegevens

Naam

Apache Lucene

Versie en release

3.0.1

Licentietype

Open source (Apache 2)

Beschrijving

Lucene is een ‘library’ voor Information Retrieval (IR) geschreven in Java. Lucene biedt functionaliteit voor het indexeren en doorzoeken van documenten. Verder biedt Lucene een geavanceerd mechanisme voor tekstanalyse, waarmee synoniemen, meertaligheid en controle over relevantie worden ondersteund.

Lucene is de defacto standaard open source IR library en dient als de onderliggende technologie voor de zoekfunctionaliteit van vele websites en andere zoekoplossingen.

Releasebeheer

Gemiddeld verschijnt er elke drie maanden een minor release en bugfix releases komen continu uit. Meestal worden nieuwe releases voorgesteld en bepaald door de project committers.

Aantal installaties

Meer dan 500.000 wereldwijd

Meer dan 10.000 in de Benelux

Roadmap 2010-2011

De volgende versie van Lucene (3.1) komt naar verwachting in Q2/Q3 van 2010 uit. Deze versie richt zich met name op het verbeteren van de performance en het uitbreiden van de indexstructuur voor het ondersteunen van meer dynamische content. Verder zal de ‘Near Real Time search’ functionaliteit (geïntroduceerd in versie 3.0) worden verbeterd en zal de zoek-syntax worden uitgebreid voor ondersteuning van meer zoekopdrachtmogelijkheden (bijvoorbeeld ‘Trie range queries’).

Standaardmodules

  • Query-infrastructuur

  • Indexeren en indexopslag

  • Mechanisme voor tekstanalyse

  • markering (‘hightlighting’)

  • Spellingscontrole

Referenties

Hippo, http://www.onehippo.com/, gebruiken Lucene voor de zoekfunctionaliteit binnen hun CMS repository.

LinkedIn, http://www.linkedin.com/, gebruiken Lucene voor de zoekfunctionaliteit op hun website.

Technorati, http://technorati.com, gebruiken Lucene voor de zoekfunctionaliteit op hun website.

Monster, http://jobsearch.monster.com/, gebruiken Lucene voor de zoekfunctionaliteit op hun website.

Attivio, http://www.attivio.com, commerciële enterprise zoekoplossing die Lucene gebruikt voor de zoekfunctionaliteit in hun producten.

Documentatie

Official Wiki: http://wiki.apache.org/lucene-java/

Lucene in Action (ISBN: 1932394281): http://www.amazon.com/Lucene-Action-Otis-Gospodnetic/dp/1932394281

Online tutorials: http://lucenetutorial.com/

Zoek

Samenvatting

Lucene is een ‘library’ voor ontwikkelaars om zoekresultaten op te vragen en weer te geven. Lucene zelf bevat geen componenten voor presentatie van de resultaten.

Andere, op Lucene gebaseerde oplossingen, zoals Apache Nutch en Apache Solr [link naar Solr pagina] bieden wel de presentatie van zoekresultaten.

Aantal en relevantie

Lucene retourneert het totaal aantal gevonden resultaten (gepagineerd). Voor elk gevonden resultaat wordt ook de relevantie aangegeven.

Stemming

Lucene biedt standaard vele componenten voor tekstanalyse als stemming (de meeste talen worden ondersteund). De meestgebruikte methode is gebaseerd op het Porter-algoritme.

Zoekresultaat

Lucene is een ‘library’ voor ontwikkelaars om zoekresultaten op te vragen en weer te geven. Lucene zelf bevat geen componenten voor presentatie van de resultaten.

Andere, op Lucene gebaseerde oplossingen, zoals Apache Nutch en Apache Solr bieden wel de presentatie van zoekresultaten.

Verfijning

Lucene biedt verschillende mechanismen voor het verfijnen van zoekresultaten:

  • Uitgebreide ondersteuning voor verschillende en complexe zoekopdrachten
  • Aanpasbaar en uitbreidbaar scoring-algoritme
  • Ondersteuning voor ‘boosts’ van velden en termen (zowel tijdens het indexeren als tijdens het zoeken)

Sortering

Het is mogelijk om te sorteren op relevantie en elk ander veld binnen de geïndexeerde documenten. Daarnaast is het ook mogelijk om te sorteren op meerdere velden (‘nested sorting’).

Operatoren

Lucene biedt ondersteuning voor boolean, wildcard, range, fuzzy, phrase en proximity zoekvragen.

Metadata

Lucene biedt zelf standaard geen ondersteuning voor het onttrekken van metadata uit documenten. Hiervoor bestaat een ander project binnen het Lucene ecosysteem: Apache Tika.

Bestandstypen

Lucene biedt zelf standaard geen ondersteuning voor het onttrekken van metadata uit documenten. Hiervoor bestaat een ander project binnen het Lucene ecosysteem: Apache Tika.

Markering

Lucene ondersteunt het markeren van zoektermen in de zoekresultaten (‘highlighting’).

Contentvergaring

Lucene biedt zelf standaard geen ondersteuning voor het vergaren van content. Deze functionaliteit wordt geboden door Apache Nutch, Apache Solr en Lucene Connectors Framework (LCF).

Nederlandstalig

Lucene biedt geen gebruikersinterface. Alle documentatie is in het Engels.

Beheer

Indexeerproces

Lucene maakt het mogelijk om documenten toe te voegen, te wijzigen en te verwijderen. Het is daarom mogelijk om een volledig alsmede een incrementeel indexeerproces te implementeren met Lucene.

Aansluitingen

Lucene biedt zelf standaard geen aansluitingen. Deze functionaliteit wordt geboden door Apache Nutch, Apache Solr en Lucene Connectors Framework (LCF).

Lucene maakt het wel mogelijk om zoekopdrachten te beperken tot een enkel subsysteem.

Omgevingen

Lucene biedt zelf standaard geen aansluitingen. Deze functionaliteit wordt geboden door Apache Nutch, Apache Solr en Lucene Connectors Framework (LCF).

Hosting

Lucene is een ‘library’ en dient als zodanig niet geïnstalleerd te worden. Voor een installeerbare zoekoplossing op basis van Lucene zie: Apache Solr.

Configuratie

Lucene biedt geen gebruikersinterface voor configuratie. Alle configuratie wordt programmatisch gedaan.

Optimalisatie

Lucene biedt verscheidene configuratie-mechanismes voor het optimaliseren van zowel het indexeerproces als het afhandelen van zoekopdrachten.

Thesaurus

Lucene biedt standaard ondersteuning voor synoniemen. Een aparte module, die met Lucene wordt geleverd, biedt ook ondersteuning voor spelilngscontrole gebaseerd op dictionaries. WordNet is een online dictionary die standaard wordt ondersteund.

Recall/precision

Lucene ondersteunt het verfijnen van de recall/precision door het gebruik van verschillende query-types.

Indexeerlogs

Lucene biedt standaard geen ondersteuning voor het analyseren van het indexeerproces.

Faceted search

Lucene biedt standaard geen ondersteuning voor faceted navigatie. Voor zulke functionaliteit zie: Apache Solr.

Rapportage

Lucene ondersteunt de analyse van het zoekproces door inzicht te bieden in hoe en waarom documenten worden gevonden op basis van de zoekopdracht. Daarnaast zijn er ook enkele hulpmiddelen beschikbaar voor het analyseren van de structuur van de index, bijvoorbeeld Luke.

Technieken en standaarden

Besturingssysteem

Lucene is beschikbaar op elk platform, aangezien het is ontwikkeld in Java.

Browsers

Lucene is een library en biedt geen interface die beschikbaar is in een browser.

Architectuur

Lucene is in vrijwel alle belangrijke programmeertalen verkrijgbaar, waaronder Java, .NET, PHP, Python, C, Perl, en Ruby. Voor volledige taalonafhankelijkheid zie Apache Solr.

SDK, API

Lucene is een library en biedt dus een API. Afhankelijk van de gekozen Lucene-implementatie is de API in de bijbehorende programmeertaal. De meest gebruikte is in Java.

Investering

Licentiemodel

Open source (Apache 2)

SaaS/ASP

Niet mogelijk

Toelichting leverancier

Apache Lucene is bij uitstek geschikt voor ontwikkelaars die zelf zoekfunctionaliteit willen inbouwen. Tot vrij recent was dit de meest bekende manier waarop Lucene werd gebruikt. Apache Lucene wordt dan ook in veel bekende web content management systemen gebruikt).

Tegenwoordig is het steeds eenvoudiger om het ook als losstaand zoeksysteem in te zetten, als een op Apache Lucene gebaseerd product wordt gekozen. Zo is Nutch een volledige webzoekmachine, en Apache Solr biedt geavanceerde functionaliteit zoals zoekverfijningen, faceted navigatie en webservices. Daarnaast is IBM Omnifind Yahoo! Edition een complete zoekmachine die vergelijkbaar is met een Google Mini (maar daardoor minder flexibel dan de andere op Lucene gebaseerde systemen). Ook is het nu mogelijk een op Lucene gebaseerd commercieel product aan te schaffen (Attivio AIE).

Evaluatie Hartman Communicatie

Apache Lucene is meestal niet een simpel ‘out-of-the-box’ te installeren systeem, maar in zoveel varianten beschikbaar dat eigenlijk in elk project overwogen zou moeten worden of het een geschikt alternatief is. In het geval dat er gezocht wordt naar een completere, meer ‘out-of-the-box’ zoekoplossing, is Apache Solr wellicht een beter alternatief.

Schermafbeeldingen

Luke

Luke is een tool die het mogelijk maakt om een Lucene index te bekijken. Het geeft inzicht in de index en het analyseproces.

Luke is een tool die het mogelijk maakt om een Lucene index te bekijken. Het geeft inzicht in de index en het analyseproces.

LinkedIn Zoekresultaat

De zoekfunctionaliteit van LinkedIn is gebaseerd op Lucene.

De zoekfunctionaliteit van LinkedIn is gebaseerd op Lucene.

Reacties

Geplaatst door Erik M. Hartman op 07-06-2009

Wie heeft er ervaring met Apache Lucene en wil daar over worden geïnterviewd door mij?

Geplaatst door Marco Simons op 14-08-2009

MINT is ICT specialist en als één van de weinige bedrijven in Nederland hebben wij veel kennis en ervaring in huis op het gebied van Lucene, maar ook Nutch en Solr. Wij staan open voor een interview met één van onze specialisten. Met vriendelijke groet, MINT Marco Simons

Geplaatst door Erik M. Hartman op 12-03-2010

http://www.cmswatch.com/Blog/1832-Little-Lucid-gets-big-funding-for-Lucene

Reactieformulier

Naam
E-mail adres (wordt niet gepubliceerd)
Website
Reactie

Bestel de HartmanGIDS Xillio Sitecore EPiServer Kentico Q42 IPROFS SDL Tridion Xopus Waxtrapp Erik Hartman Communicatie Allesoecontentmanagement

Erik Hartman Communicatie

voor al uw advies over een optimale communicatie- en informatiestrategie :: www.hartman-communicatie.nl

Alles over Content Management

de bron voor nieuws en achtergronden over online communicatie en informatiemanagement :: http://www.allesovercontentmanagement.nl

HartmanEVENT

leer alles over succesvol content management van de experts en de praktijkcases :: www.hartmanevent.nl

Web Analytics