Magento 2 Best Practice Workfow // David Lambauer // Meet Magento 2017 // Lei...
Searchperience Indexierungspipeline
1. Sunday, June 17, 2012 1
Indexing Pipeline (de)
Search Meetup Rhein Main - 19.6.2012 Daniel Pötzinger
2. Sunday, June 17, 2012 2
Über Searchperience
Kurzer Überblick
Eine eigenständige Suchfunktion für
Webseiten und Online-Shops
Basierend auf hochleistungsfähiger Open
Source Apache Solr Technologie
SaaS Cloud Service
Und weil es ein Erlebnis für die Benutzer
und nicht nur eine Suche ist, nennen wir
es Searchperience!
3. Sunday, June 17, 2012 3
Searchperience Komponenten
Searchperience
Indexer
CMS +Searcher
Index
SOLR Cloud
Query Processing
Result Processing
Facetted Search
Fuzzy Search
Livesuggest
Search Widgets
Rich
Data
Unstructured
Data
Structured
Data
Search
Analytics
Pipeline
4. Sunday, June 17, 2012 4
What is an Indexing Pipeline?
Structured
Data
Unstructured
Data
Rich
Data
Pipeline
„Garbage In, Garbage Out“ - Also müssen
wir das meiste aus den Daten „rausholen“
Die abhängigen Einzelschritte in einer
Indexierungspipeline bereiten ein
Dokument für den Suchindex vor:
Dokumentenfelder mit extrahierten
und ermittelten Inhalten
Dokumentenwichtigkeit (Boost)
ausgehende Relationen (Links)
Intelligente und manuelle Anreicherung
Filterung, Statistiken, skalierbare
Ausführung...
6. Sunday, June 17, 2012 6
An Indexer Example Pipeline
Conditional Subpipes:
„Check Document mimetype and source ..etc“
is product page? is job page? is not „text/*“ mimetype?
XHTML Extracter
„Extract content and product data“
Enrich by Feed
„add price from SAP feed“
Add Boost +40
XHTML Extracter
„Extract Joboffer data“
Get rating from
qype
Tika Extracter
„Extract rich content“
Detect language
Thesaurus
Expansion
Pagerank Evaluation
Searchperience Enrichments
...
Image Analysis
7. Sunday, June 17, 2012
XML Extracter
XHTML Extracter
Tika Extracter
Custom Extracter
7
Indexer Pipeline Steps
Different Extracters
8. Sunday, June 17, 2012 8
Indexer Pipeline Steps
Language Detection
Spracherkennung an Hand
Text
langdetect“ Open Source mit
entsprechenden Lerndaten
9. Sunday, June 17, 2012 9
Indexer Pipeline Steps
Thesaurus Expansion
Suche nach „Drahtesel“ findet
auch „Fahrräder“
Verschiedene Thesauri können
nach Spracherkennung oder
Dokumententyp eingesetzt
werden um gezielt Inhalte mit
ihren Synonymen zu erweitern
10. Sunday, June 17, 2012
Nutzt TFIDF werte für
das Dokument in Bezug
auf den aktuellen Index
Beispielsweise genutzt
für Keyword Boosting
und Personalisierung
10
Indexer Pipeline Steps
Interesting Terms
Barack Obama
Navigation
Eurokrise
11. Sunday, June 17, 2012
Open NLP
Open Calais
Named Entity Recognition
Anreicherung mit Daten aus
dem sematic Web
(Wikipedia...)
11
Indexer Pipeline Steps
NLP & Semantic Extraction
Person: Barack Obama
City: Berlin
Time: 9.11.2001
12. Sunday, June 17, 2012 12
Indexer Pipeline Steps
Learn from User Behaviour / Search Analytics Processing
Auswertung des
Nutzerverhalten
beeinflusst
Dokumenten
Keywords und
Dokumenten-
wichtigkeit
13. Sunday, June 17, 2012 13
Indexer Pipeline Steps
Learn from User Behaviour / Search Analytics Processing
Manuelle Auslese und
Anreicherung...
14. Sunday, June 17, 2012 14
Indexer Pipeline Steps
Anreicherungspflege für Suchadministratoren
Regelbasierte
Keywort
Anreicherung
und Boosting-
manipulation
15. Sunday, June 17, 2012 15
Indexer Pipeline Steps
Kontrolle auf Dokumentenebene
Dokumente
Boosten,
Prominent
darstellen oder
sperren
16. Sunday, June 17, 2012 16
SOLR is not an Indexing Pipeline
Es gibt einfache Konzepte
(UpdateChain / LangDetect /
ExtractingRequestHandler)
Keine richtigen abhängigen
Auswertungen / Unflexibel
Kein Framework für eigene
Pipeline-Steps
Keine testgeriebene Pipeline
Konfiguration möglich
Skalierung und Verteilung der
Indexierung
Gute Auffindbarkeit braucht flexible Kontrolle
17. Sunday, June 17, 2012 17
SOLR is not an Indexing Pipeline
Der Searchperience Indexer hat
eine eigenentwickelte Crawling
und Indexierungs- Architektur,
und stellt ein Kernbestandteil der
Lösung dar.
Andere Lösungen
Pipeline Projects
Open Pipe
UIMA
https://docs.google.com/
spreadsheet/ccc?
key=0ApsMZSogVbD9dERlRlAyZXp
ES0JJNjVJaFlLQVN5UXc#gid=0