3. RUHR-UNIVERSITÄT BOCHUM
Universitätsbibliothek
Integration von Apache Solr in TouchPoint
Was ist Solr?
Schnelles, skalierbares Enterprise-Suchsystem
Yonik Seeley (@lucene_solr)
Ende 2004: CNET
Anfang 2006: Apache Projekt
Aktuell: Version 1.4 (10.11.2009)
4. RUHR-UNIVERSITÄT BOCHUM
Universitätsbibliothek
Integration von Apache Solr in TouchPoint
Was ist Lucene/Solr?
Seit 15. März 2010: Lucene- und Solr-Code und -Infrastrukturen
verschmelzen
Engere Koordination zwischen der Entwicklung von Lucene und Solr
Neue Lucene-Funktionalitäten schneller in Solr
Kürzere Release-Zyklen für Solr
5. RUHR-UNIVERSITÄT BOCHUM
Universitätsbibliothek
Integration von Apache Solr in TouchPoint
Funktionalitäten von Solr
RESTful API
Administrationsoberfläche; Monitoring über JMX
Konfiguration über XML-Dateien
Erweiterbar durch Plugin-Architektur
Konfigurier- und erweiterbares Caching
Skalierbar durch verteilte Indizes auf mehreren Rechnern
7. RUHR-UNIVERSITÄT BOCHUM
Universitätsbibliothek
Integration von Apache Solr in TouchPoint
Funktionalitäten von Solr
Sprachliche Analyse
Unterschiedliche Tokenizer (Leerraum, HTML, N-Gramme...)
Filterung mit regulären Ausdrücken, phonetische Filter
Porter-/Snowball-Stemmer für verschiedene Sprachen
Stop-Wortlisten, Synonymlisten
8. RUHR-UNIVERSITÄT BOCHUM
Universitätsbibliothek
Integration von Apache Solr in TouchPoint
Funktionalitäten von Solr
(Multiple) Navigatoren und Filter
Hervorheben von Suchtermen
Rechtschreibvorschläge
Vorschläge für ähnliche Treffer
Clustering von Suchergebnissen
„Redaktionelles Ranking“ (aka „Best Bet“)
9. RUHR-UNIVERSITÄT BOCHUM
Universitätsbibliothek
Integration von Apache Solr in TouchPoint
Funktionalitäten von Solr
Einfaches XML-Format zum Indizieren
Weitere Handler:
CSVRequestHandler
DataImportHandler (FieldReaderDataSource, FileDataSource,
URLDataSource, JdbcDataSource)
Solr Cell (= Apache Tika: Microsoft Office, PDF, ODF, RTF, HTML, XML,
EPub, mbox...)
10. RUHR-UNIVERSITÄT BOCHUM
Universitätsbibliothek
Integration von Apache Solr in TouchPoint
Skalierbarkeit von Solr
UB Bochum: ca. 2,3 Mio Datensätze
Beluga: ca. 4,7 Mio Datensätze
Nationallizenzen: ca. 22 Mio Datensätze
„Wir verarbeiten aktuell im Tagesdurchschnitt etwas mehr als 4 Such-
Requests pro Sekunde (in Solr) und die Kiste langweilt sich zu Tode.“
11. RUHR-UNIVERSITÄT BOCHUM
Universitätsbibliothek
Integration von Apache Solr in TouchPoint
Skalierbarkeit von Solr
Hathi Trust: ca. 5,3 Mio Volltexte (18.2.2010)
Durchschnittliche Antwortzeit: 3 Sek, 90% der Anfragen in 4 Sekunden, 9%
zwischen 4 und 24 Sek und 1% länger als 24 Sek
Hardware: 4 Suchserver mit 1 Tomcat (16 GB Heapspace) und je 3
„Partitionen“; 10 Partitionen aktiv
1 Indexserver mit 12 Tomcats (jeweils 6 GB Heapspace) und 12 Partitionen;
10 Partitionen aktiv
Informationen: http://www.hathitrust.org/blogs/large-scale-search
15. RUHR-UNIVERSITÄT BOCHUM
Universitätsbibliothek
Integration von Apache Solr in TouchPoint
Integration in TouchPoint
Code-Basis: InfoGuide mit einer Schnittstelle für generische Datenquellen
Implementierung von
GenericServer,
ResultHitlist,
Result,
DrillDowns,
MoreLikeThis...