Solr Fusion Schema Mapping

421 Aufrufe

Veröffentlicht am

In dieser Präsentation wird erläutert wie Mappings für Solr Fusion zu erstellen sind und wie diese funktionieren.
http://www.outermedia.de

Veröffentlicht in: Software
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
421
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
4
Aktionen
Geteilt
0
Downloads
5
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Solr Fusion Schema Mapping

  1. 1. Ziel: vufind 1.X ist mit mehreren Solr-Servern verwendbar • Solr(fusion) Query: highlight queries, filter queries, query • Solr Response: highlights, documents, facets • https://github.com/outermedia/solr-fusion/blob/master/src/main/doc/user- guide.md#supported-solr-features • • • • • •
  2. 2. zu verarbeitende Daten werden in einheitliches internes Format überführt • Vorteil: es können einheitliche Regeln geschrieben werden • Vorteil: eine Regel kann auf alle zu verarbeitenden Daten angewandt werden das interne Format ähnelt einem Solr-Dokument: Ein Dokument besteht aus Feldern ein Feld besteht aus einem Namen und einer Liste von Werten
  3. 3. • • • •
  4. 4. Eine <om:change> Regel deklariert den Ziel-Feldnamen und Ziel-Wert. Nur die textuell letzte change-Regel zum gleichen Quell-Feld wird ausgewertet. ACHTUNG: Regel-Namen mit "*" werden immer ausgeführt. • Reihenfolge von <om:change> Regeln ist wichtig • Mehrfach Transformationsfkt. innerhalb eines <om:change> anwendbar.
  5. 5. javascript - generisch beanshell - generisch regexp - Suchen und Ersetzen static-table - Konstanten abbilden static-value - Wert setzen merge-multi-value - Multi value Field zu Single value filter-id - Solrfusion-Id zu Solr-Id field-merger - Felder zusammenfassen normalizer - Zeichenketten normalisieren set-doc-count - Facetten Dokument-Anzahl setzen
  6. 6. logs/log4j.log log4j.rootCategory=TRACE, Default, File … log4j.appender.File.Threshold=TRACE UBL-Vufind 1.X sendet bei einer Suche mit 20 Treffern 42 Solrfusion- Anfragen!
  7. 7. logs/log4j.log • • •
  8. 8. • • • • • • •
  9. 9. <om:field fusion-name="solr-server"> <om:add> <om:response target="facet" type="static-value"> <value>UBL4</value> </om:response> <om:response target="facet" type="set-doc-count"> <total-found-nr /> </om:response> </om:add> <!-- post-processors handle this synthetic field --> <om:drop><om:query /></om:drop> </om:field>
  10. 10. <om:field name="s7" fusion-name="text7"> <om:change> <om:response type="merge-multi-value"> <range>2</range> <separator>,</separator> </om:response> </om:change> </om:field>
  11. 11. <om:field name="id" fusion-name="id"> <om:change> <om:query type="filter-id" /> </om:change> </om:field>
  12. 12. <om:field fusion-name="fulltext"> <om:add> <om:response type="field-merger"> <separator>;</separator> <field>content</field> <field>description</field> </om:response> </om:add> </om:field>
  13. 13. <om:field name="title_sort" fusion-name="title_sort"> <om:change> <om:response type="normalizer"> <to-lower-case>true</to-lower-case> <start-chars-to-del>  ."-[(</...> </om:response> </om:change> </om:field>
  14. 14. <om:post-processor> <om:query type="send-if-fq-eq"> <fusion-name>solr-server</fusion-name> <fusion-value>UBL</fusion-value> </om:query> </om:post-processor>
  15. 15. <om:post-processor> <om:query type="filter-empty-fq"> <ignore-fusion-name>solr-server</...> <ignore-fusion-name>authorized_mode</...> </om:query> </om:post-processor>
  16. 16. <om:field name="Titel1" fusion-name="title"> <om:add level="inside"><om:query/></om:add> </om:field>
  17. 17. <om:field name=„not_used" fusion-name=„not_used"> <om:add level="outside"> <om:query type="static-value"> <value>+t11:"text"~2^75</value> </om:query> </om:add> </om:field>
  18. 18. <entry> <value>eBook</value> <fusion-value>Electronic Resources</...> </entry> <entry> <value>eJournal</value> <fusion-value>Electronic Resources</...> </entry>...
  19. 19. • • • • •

×