Heute schliessen wir unser Schaubild mit den Lerneinheiten ab, wir sehen uns noch das Discovery-System VuFind und die Suchmaschine Solr an.

wo stehen wir?

In unserem Schaubild der Lerninhalte stehen wir nun ganz am Ende. Heute sehen wir uns also noch die letzten zwei Programme Solr und VuFind an.

schaubild_Discovery

Rückblick und Nachtrag zu OpenRefine

OpenRefine eignet sich sehr gut Daten explorativ zu entdecken und Datenbereinigung oder auch Datenanreicherung ausserhalb der Datenbank auszutesten. Die Datenanreicherung, Reconciliation, ist der Schwerpunkt von OpenRefine. Als Alternative zu OpenRefine können hier Catmandu (basierend auf der Sprache Perl), Metafacture (Java) und MarcEdit (konkret für Daten in MARC21).

Solr und VuFind

Ein Discovery-System ist ein Suchsystem für die Suche in bibliothekarischen Katalogen. Es basiert auf Suchmaschinentechnologie. In unserem Beispiel nutzen wir VuFind als Discovery-System, welchem die Suchmaschine Solr zugrunde liegt.

VuFind ist auch wiederum Open Source, es besteht schon sehr lange und ist sehr verbreitet. Die Software wird von der OpenLibraryFoundation von EBSCO unterstützt und vorangetrieben.

Solr ist, zusammen mit Elasticsearch, so zusagen der Industriestandard. So ist Solr nicht nur der Kern von VuFind sondern auch von anderen Systemen. Beide Produkte funktionieren im Grunde ähnlich, sie bauen einen Index auf und bieten eine API (Web-Schnittstelle) über welche dann der Index abgefragt werden kann. Beide Suchmaschinen (Solr und Elasticsearch) sind Open Source. Die Stärke von Elasticsearch besteht in der Visualisierung von Daten, die von Solr hingegen der Umgang mit sehr grossen Datenmengen.

Suchindex vs. Datenbank

Was ist eigentlich der Unterschied zwischen einem Suchindex (z.B. Solr) und einer Datenbank (z.B. MySQL)? Da mich diese Frage sehr interessiert, weil ich ja beruflich oft mit Datenbanken konfrontiert bin, werde ich hier etwas detailliert darauf eingehen.

Das Ziel eines Suchindexes ist möglichst schnell grosse Datenmengen zu durchsuchen, daher sind die Datenstrukturen flach abgelegt, das heisst, jedes Objekt ist eine einfache Liste von Feldern mit Werten. Hingegen in einer Datenbank sollen Daten in ihren verschiedenen Relationen dargestellt werden. Auch in der Art der Abfrage besteht ein Unterschied, in einer Datenbank findet ein reiner Glyphen-Vergleich statt, das heisst es wird bei einer Abfrage nur genau das ausgegeben, was in der Suchanfrage (Zeichen für Zeichen) angefragt wird. Eine Suchmaschine dagegen kann lexikalisch Suchen, das heisst die Indexsuche macht nicht nur einen Zeichenvergleich zwischen Anfrage und Inhalten, sondern sie kann die eingegebenen Worte auf ihren Wortstamm zurückführen und daraus abgeleitete andere Worte suchen. Wird zum Beispiel ein Verb eingegeben, werden nicht nur Treffer ausgegeben, die das genau gleiche Verb, in der gleichen Zeitform und Konjugation, sondern allen Formen, in welchen das Verb im Index vorkommt. Ein Suchindex ist geeignet für statische Daten, die nicht oder nur selten angepasst werden, bei Daten die veränderbar sein sollen und oft angepasst werden müssen, wird eine Datenbank bevorzugt.

Suchindex_vs_Datenbank

Der Kreis wird geschlossen

Nun versuchen wir in einer Übung unsere in den letzten Unterrichtseinheiten erarbeiteten Datensätzen in MARCXML (respektive den zur Verfügung gestellten Beispieldatensatz) und importieren diesen in das Discovery-System, wo sie nun durchsuchbar sind. So schliesst sich der Kreis von den von uns erfassten Daten in Koha, Archivesspace oder DSpace welche exportiert, editiert und nun schlussendlich in einem Discovery-System für die Suche zur Verfügung gestellt wird.

Quellen