Solr Crashkurs - Interner Workshop

Click here to load reader

download Solr Crashkurs - Interner Workshop

of 26

  • date post

    24-Jun-2015
  • Category

    Technology

  • view

    226
  • download

    1

Embed Size (px)

description

Kurze interne Einführung für die Suchsmaschine SOLR für Dokumentare und Bibliothekare bei GESIS.

Transcript of Solr Crashkurs - Interner Workshop

  • 1. SOLR Crashkurs Philipp Schaer, 24.7.2014 GESIS-interner Workshop

2. Motivation SOLR ist die zentrale Komponente hinter SSOAR und dem SOFISwiki Suchformulare decken aber nicht alle Flle ab 3. Agenda 1. Block: Grundlagen Grundlegender Aufbau/Funktionsweise SOLR HTTP Crashkurs GET Parameter Praktische bung 2. Block: Einfache Suchen Feldbasierte Suche Boolesche Suchoperatoren Ausgabeformate Praktische bung 3. Block: Suchmaschinenspezialitten Facetten Ranking vs. Sortierung Praktische bung 4. 1. BLOCK: GRUNDLAGEN 5. in a nutshell SOLR ist eine Suchmaschine (keine Datenbank), stellt einen Index zur Verfgung, arbeitet ber HTTP, hat ein grafisches Benutzungsinterface, beherrscht Relevance-Ranking (Vektorraum), beherrscht Boolesche Anfragen, hat ein flexibles Datenschema, uvm. 6. Wie funktioniert eine Suchmaschine? http://nlp.stanford.edu/IR-book/html/htmledition/putting-it-all-together-1.html 7. Komponenten von SOLR 8. Die Indexierungspipeline Tokenizer Tokens Friends Romans Countrymen Linguistische Module (z.B. Spellchecker, Stemmer etc.) Modifizierte Tokens friend roman countryman Indexer Invertierter Index friend roman countryman Dokument Friends, Romans, countrymen. 9. Ein paar Begrifflichkeiten facets result list operators query 10. HTTP Basiswissen Hypertext Transfer Protocol (HTTP) Zentrales bertragungsprotokoll im Internet Ressourcen werden ber URI adressiert: Protokoll Host Ressource http://www.server.de/index.html?werbung=ja GET-Parameter 11. HTTP GET-Parameter Es gibt viele grundlegende HTTP Befehle: GET: Abruf einer Ressource (z.B. Wikipedia-Seite) POST: Absenden einer Ressource (z.B. Formular) Beiden knnen Parameter bergeben werden: /wiki/Spezial:Search?search=Katzen&go=Artikel Argument Wert search Katzen go Artikel 12. Besondere Regeln Beachte Einsatz von ? und & im Parameter! Manche Zeichen mssen kodiert werden: Braucht man aber nicht hndisch machen: http://www.w3schools.com/tags/ref_urlencode.asp Leerzeichen ? & # + oder %20 %3F %26 %23 13. 1. bung: URL-Parameter Firefox starten und URL Shooter installieren: https://addons.mozilla.org/de/firefox/addon/ url-shooter/ Auf SSOAR oder das SOFISwiki gehen Suche starten, versuchen die URL-Parameter zu verstehen und auch zu verndern Kurz protokollieren und Ergebnisse in der Gruppe vorstellen 14. 2. BLOCK: EINFACHE SUCHEN 15. Generelle Syntax Suche berall: ?q=geld Suche in einem Feld: ?q=title:geld Suche nach allem: ?q=*:* Boolesche Suche: ?q=geld AND liebe ?q=geld OR liebe ?q=geld AND NOT liebe Suche nach Nichts: ?q=[* TO *] 16. SOLR Query Language https://wiki.apache.org/solr/SolrQuerySyntax 17. Unterschiedliche Feldtypen String SOFISwiki: Am Suffix _s zu erkennen SSOAR: Ggf. _ac oder _sort Inhalte sind 1:1 so, wie im Original Text / General_Text / Text_en / etc SOFISwiki: am Suffix _t zu erkennen SSOAR: Kein Suffix (Standard) Inhalte sind durch eine Stopwortliste, Tokenizer, Stemmer usw. vorverarbeitet Date / Int / etc Datumsfelder, Zahlenwerte uvm. werden hier jetzt erstmal nicht behandelt 18. Und wie komme ich zu den Feldbezeichnern? http://sofis:8080/solr/#/sofis/schema-browser?field=projektFreitext 19. Aber die Ausgabe kann ja keiner lesen! Ausgabe nur einzelner Felder: ?fl=feld1,feld2 (Beispiel: ?fl=pagetitle,Id_s) Ausgabe z.B. in JSON, statt XML: ?wt=json Ausgabe von 20 oder unendliche vielen Eintrgen: ?rows=20 / ?rows=-1 (vorsicht!) Anfrage nach bestimmten Kriterium filtern: ?fq=feld:wert (Beispiel: ?fq=category:Projekte) Einrcken oder nicht: ?indent=true & ?indent=false 20. 2. bung: Feldbasierte Suchen SOFISwiki: 1. Anzeigen aller Projekte eines Jahrgangs mit z.B. der Einschrnkung AND Rnr aufgefllt (= alle Wiederholungsmeldungen eines Jahrgangs) bzw. NOT Rnr ausgefllt (= alle Neuaufnahmen eines Jahrgangs) 2. Anzeige aller Projekte mit einer bestimmten Institution (z.B. DFG) eines bestimmten Jahrgangs 3. Art der Forschung in eine Abfrage einbeziehen SSOAR: 1. Wie viele Datenstze haben Volltexte und wie viele Datenstze verlinken auf einen externen Volltext? 2. Zeige mir alle Datenstze an, die im Feld 'ssoar.contributor.institution' den Eintrag GIGA haben. 3. Wie viele Datenstze haben einen bersetzungstitel (dc.title.alternative)? 21. 3. BLOCK: SUCHMASCHINENSPEZIALITTEN 22. Sortierung Normalerweise werden die Ergebnisse nach Relevanz sortiert (Vektorraummodell) Mit Hilfe des Parameters ?sort kann aber auch nach einem festen Kriterium sortiert werden Die Reihenfolge kann sein: Aufsteigend: ?sort=feld asc Absteigend: ?sort=feld desc Beispiele: ?q=*:*&sort:dateIssued.year_sort asc 23. Facettierungen facets query 24. Facettierung Welche Felder treten in meiner Ergebnissemenge wie oft auf? ?facet=true&facet.field=feld Ein Beispiel (wer kann erraten, was wir hier sehen werden?) http://www.server.info/solr/search /select/?q=*%3A*&facet=true &facet.field=dateIssued.year &rows=0 https://wiki.apache.org/solr/SimpleFacetParameters 25. Gesammelte Fragen: SOFISwiki 1. Gibt es doppelte/unvollstndige/zu lange Erfassungsnummern (immer 8 Zahlen) im SOFISwiki (~ Dubletten- bzw. Plausibilitskontrolle) 2. Welche Institution hat die meisten Projekte? 3. In welchem Projekt steht ein Leiter, fehlt aber ein Bearbeiter bzw. steht ein Bearbeiter, fehlt aber ein Betreuer? 4. Wo steht im Eingabefeld der Verffentlichungen Text, das Hkchen der Auswahl (ja, nein, geplant) steht aber auf keine Angabe (bzw. auf nein/geplant)? 5. Anzeige aller Hauptklassifikationen eines Jahrgangs (bzw. Verteilung ber den gesamten Bestand) 26. Gesammelte Fragen: SSOAR 1. Zeige mir alle Datenstze an, die im Zeitraum vom 1.5.2013 bis zum 31.7.2014 verffentlicht wurden. 2. Welche Datenstze haben in der Bandangabe (dc.source.volume) nicht nur die Bandzhlung, sondern auch andere Zeichen (Z.B. 'Bd.', 'Vol.') als Eintrge? 3. Welche Zeitschriftenartikel (dc.type.stock) haben im Feld Begutachtungsstatus (dc.description.pubstatus) den Eintrag 'Preprint' bzw. die ID '3'?