Sunday, June 17, 2012 1
Indexing Pipeline (de)
Search Meetup Rhein Main - 19.6.2012 Daniel Pötzinger
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!
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
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...
Indexer Processes
Sunday, June 17, 2012 5
Indexer Architecture
Documents +
Relations
Crawler Queue
LinkQueue
Enrichment
Crawler
Indexer
PageRank Calc
...
API
Indexer „Database“
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
Sunday, June 17, 2012
 XML Extracter
 XHTML Extracter
 Tika Extracter
 Custom Extracter
7
Indexer Pipeline Steps
Different Extracters
Sunday, June 17, 2012 8
Indexer Pipeline Steps
Language Detection
 Spracherkennung an Hand
Text
 langdetect“ Open Source mit
entsprechenden Lerndaten
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
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
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
Sunday, June 17, 2012 12
Indexer Pipeline Steps
Learn from User Behaviour / Search Analytics Processing
Auswertung des
Nutzerverhalten
beeinflusst
Dokumenten
Keywords und
Dokumenten-
wichtigkeit
Sunday, June 17, 2012 13
Indexer Pipeline Steps
Learn from User Behaviour / Search Analytics Processing
Manuelle Auslese und
Anreicherung...
Sunday, June 17, 2012 14
Indexer Pipeline Steps
Anreicherungspflege für Suchadministratoren
Regelbasierte
Keywort
Anreicherung
und Boosting-
manipulation
Sunday, June 17, 2012 15
Indexer Pipeline Steps
Kontrolle auf Dokumentenebene
Dokumente
Boosten,
Prominent
darstellen oder
sperren
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
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
Sunday, June 17, 2012 18
Vielen Dank!
Fragen?

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...
  • 5.
    Indexer Processes Sunday, June17, 2012 5 Indexer Architecture Documents + Relations Crawler Queue LinkQueue Enrichment Crawler Indexer PageRank Calc ... API Indexer „Database“
  • 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
  • 18.
    Sunday, June 17,2012 18 Vielen Dank! Fragen?