Agenda
Anwendungsfälle
Aufbau der Such-Datenstruktur
Fallstricke
Motivation
Slide 3
Slide 3 text
Was ist Suche?
Slide 4
Slide 4 text
• Suche ist mehr als
Volltextsuche
• Suche funktioniert im
Kleinen wie im Großen
• Suche kann auch bei
klassischen
Anwendungsfällen
unterstützen
Was wollen wir in diesem Vortrag zeigen
http://www.morguefile.com/archive/display/861760
Slide 5
Slide 5 text
Strukturiert
Strukturierte vs. unstrukturierte Daten
• Datenbanken
• LDAP
• Spreadsheets
• (teilweise)
Applikations- /
API-Daten
• Web Seiten
• Email
• Text- und Office-
Dokumente
• PDF-Dokumente
• Log-Files
Unstrukturiert
Quelle: Search-Based Applications: At the Confluence of Search and Database Technologies
Slide 6
Slide 6 text
• Daten-Silos
Konsolidierung Daten
• Daten-Menge steigt immer weiter
Skalierbarkeit
• Häufige Änderungen
Flexibles Schema und Abfragen
Probleme klassischer Applikationen
Slide 7
Slide 7 text
Suchserver vs. Datenbank
Eigenschaft Suchserver Datenbank
Semantisches Modell Dokumenten-Modell Relationales Modell
Speicherstruktur Index Tabelle
Ablage der Daten Denormalisiert Normalisiert
Slide 8
Slide 8 text
Search-Driven Applications
Suche ist Kernbestandteil
Suchserver als zentraler Lesespeicher
Slide 9
Slide 9 text
Agenda
Anwendungsfälle
Aufbau der Such-Datenstruktur
Fallstricke
Motivation
Slide 10
Slide 10 text
Vom Inhalt zum Index
Document Analyzing Aufbau
Struktur
Slide 11
Slide 11 text
Input-Dokumente
Slide 12
Slide 12 text
• Verarbeitung der
Inputdokumente
• Preprocessing vor der Ablage
• Entfernen, modifizieren,
hinzufügen von Termen
Text-Analyzing
Slide 13
Slide 13 text
Beispiel Text-Analyzing
Suchgetriebene
Suchgetriebene Applikationen
Applikationen
suchgetriebene applikationen
suchgetrieb applikation
Source
Standard
Tokenizer
Lowercase
Filter
German-Light-
Stem-Filter
Slide 14
Slide 14 text
• Invertierter Index
• Inputfeld kann auf unter-
schiedliche Weise abgelegt
werden
• Suchterm zu Dokument zuordnen
Der Indexaufbau
• Dokumentenmodell
• Datenablage anhand geplanter Abfragen
• Duplizierte Datenablage
Modellierung des Index
http://www.morguefile.com/archive/display/12788
Slide 18
Slide 18 text
• Inkrementell Indexieren
• Änderungen auch im Cluster schnell verfügbar
• Onlineabfragen für Facetting / Aggregationen
Near Realtime
http://www.morguefile.com/archive/display/196583
Slide 19
Slide 19 text
Agenda
Anwendungsfälle
Aufbau der Such-Datenstruktur
Fallstricke
Motivation
Slide 20
Slide 20 text
Suche ist zentraler Bestandteil der
Applikation
Anwendung
DB
CMS
Weitere
Systeme
Suchserver
Indexierungen
Abfragen
Pflege
Verwaltung
Dateisystem
Slide 21
Slide 21 text
Vereinheitlichung von verschiedenen
Quellen
News
title
message
created
Document
filename
created
Payload
binary
Report
title
abstract
published
Suchengine
• Vereinheitlichung über Index
• Entsprechendes Mapping
Index-Prozess
Relationale DB
• Vereinheitlichung in einer
Ansicht/Liste ist schwierig
?
Slide 22
Slide 22 text
Listen für CRUD-Dialoge
Geschäft Vertrieb
Slide 23
Slide 23 text
Listen für CRUD-Dialoge
Geschäft Vertrieb Aussendienst
Slide 24
Slide 24 text
Facetten für den Drilldown von Events
Slide 25
Slide 25 text
7 SQL-Abfragen für den Aufbau der
Facetten …
Slide 26
Slide 26 text
Facette mit Elasticsearch
Slide 27
Slide 27 text
Anwendungsfälle für E-Commerce
Slide 28
Slide 28 text
Der Suchserver rückt in den Mittelpunkt
Anwendung
DB
Suchserver
Abfragen
Slide 29
Slide 29 text
Der Suchserver rückt in den Mittelpunkt
Anwendung
DB
Suchserver
Abfragen
Agenda
Anwendungsfälle
Aufbau der Such-Datenstruktur
Fallstricke
Motivation
Slide 33
Slide 33 text
• Synchronisierung
Systeme
• Fehlersuche
• Mehrere `Verursacher`
• Nachstellen
Produktionsprobleme
• Entwicklungssetup
Komplexität der Architektur steigt
http://www.morguefile.com/archive/display/591261
Slide 34
Slide 34 text
Transaktionen
Slide 35
Slide 35 text
• Analyzing ist
verlustbehaftet
• Update einzelner Felder
schwierig
• Originalinhalt für
Anpassungen weiter
zugreifbar
Daten
http://www.morguefile.com/archive/display/183870
Slide 36
Slide 36 text
• Testunterstützung ist
vorhanden
• SolrtestCaseJ4
• Elasticsearch Test
Framework
• Relevanz ist subjektiv
• Analyzing-Prozess kann
komplexer werden
• Rollback in Tests
Testbarkeit
http://www.morguefile.com/archive/display/87396
Slide 37
Slide 37 text
Betrieb
• Security
• Separate Installation
• Verfügbarkeit
• Verteilte Logfiles
• Monitoring
Slide 38
Slide 38 text
Was bringt die Umsetzung von
Applikations-Logik mit Suchmaschinen?
• Abfragen sind teilweise einfacher
• Flexibler für Erweiterungen
• Performance-Vorteile
• Neue Anwendungsszenarien
Fazit
Slide 39
Slide 39 text
Vielen Dank!
Florian Hopf, @fhopf
Tobias Kraft, @tokraft
Mehr Interesse an Suche?
@KASearch
Slide 40
Slide 40 text
meet the SPEAKER
@speakerlounge
1. OG DIREKT ÜBER DEM EMPFANG