Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Die Suche macht den Unterschied

7de95d7db80b3f52975ec0a245eaad14?s=47 exensio
March 18, 2016

Die Suche macht den Unterschied

Vortrag auf der CeBIT bei der heise developer world (http://developerworld.heise.de/).
Die Beispiele und Anwendungsfälle basieren auf auf elasticsearch.

7de95d7db80b3f52975ec0a245eaad14?s=128

exensio

March 18, 2016
Tweet

Transcript

  1. Die Suche macht den Unterschied heise developer world 18.03.2016 Tobias

    Kraft, exensio GmbH
  2. 2 Anwendungsfälle Datenstruktur und Verteilung Fallstricke Motivation

  3. 3 Ziele des Vortrages • Suche ist mehr als Volltextsuche

    • Suche funktioniert im Kleinen wie im Großen • Suche kann bei klassischen Anwendungsfällen unterstützen http://www.morguefile.com/archive/display/861760
  4. 4 Funktionen einer Suche

  5. 5 Funktionen einer Suche Blätterung Sortierung Facettierung Unstrukturierte Suche Strukturierte

    Suche Highlighting Autocomplete Did you mean Synonyme
  6. 6 Für Suchmaschinen gibt es viele Einsatzszenarien Volltextsuche Volltextsuche Datastore

    Query-Turbo Geo-Suche Logfile-Analyse Analytics
  7. 7 Anwendungsfälle Datenstruktur und Verteilung Fallstricke Motivation

  8. 8 Elasticsearch im Überblick • Suchmaschine unter Apache 2 Open

    Source License • Erstes Release 2010 • Mehrere Produkte • Elastic Stack • X-Pack • Elastic Cloud • Basiert auf Java • Basiert auf Lucene • JSON-API • Schemalos • Plugins
  9. 9 Elasticsearch im Überblick • Suchmaschine unter Apache 2 Open

    Source License • Erstes Release 2010 • Mehrere Produkte • Elastic Stack • X-Pack • Elastic Cloud • Basiert auf Java • Basiert auf Lucene • JSON-API • Schemalos • Plugins
  10. 10 Speichern von Daten in einer Suchmaschine Document Analyzing Mapping

    Struktur
  11. 11 Near Realtime http://www.morguefile.com/archive/display/196583 • Inkrementell Indexieren • Änderungen auch

    im Cluster schnell verfügbar • Onlineabfragen für Facetting / Aggregationen
  12. 12 • Höhere Leselast • Leichter Skalierbar • Größere Datenmengen

    Verteilung der Daten http://mrg.bz/EFmkFQ
  13. 13 Node 1 otcdrug document 1 1 2 3 4

    Replica: 0 Replica: 0 Datenverteilung in Elasticsearch mit Knoten und Shards
  14. 14 Node 1 otcdrug document Node 2 otcdrug document 1

    1 2 3 1‘ 4 Replica: 1 Replica: 0 Neuer Knoten im Cluster Datenverteilung in Elasticsearch mit Knoten und Shards
  15. 15 Node 1 otcdrug document Node 2 otcdrug document Node

    3 otcdrug document 1 1 2 3 1‘ 4 1‘ 2‘ 3‘ Replica: 1 Replica: 1 4‘ Neuer Knoten im Cluster Datenverteilung in Elasticsearch mit Knoten und Shards
  16. 16 Anwendungsfälle Datenstruktur und Verteilung Fallstricke Motivation

  17. 17 Suche ist zentraler Bestandteil der Applikation Indexierungen Abfragen Pflege

    Verwaltung Anwendung Suchserver DB Weitere Systeme Dateisystem CMS
  18. 18 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
  19. 19 Listen für CRUD-Dialoge Geschäft Vertrieb

  20. 20 Listen für CRUD-Dialoge Geschäft Vertrieb

  21. 21 Listen für CRUD-Dialoge Geschäft Vertrieb Aussendienst

  22. 22 Listen für CRUD-Dialoge Geschäft Vertrieb Aussendienst

  23. 23 Facetten für den Drilldown von Events

  24. 24 7 SQL-Abfragen für den Aufbau der Facetten …

  25. 25 7 SQL-Abfragen für den Aufbau der Facetten …

  26. 26 Facette mit Elasticsearch

  27. 27 Facette mit Elasticsearch

  28. 28 Marktanalysen Pharmamarkt – Starschema

  29. 29 Marktanalysen Pharmamarkt – Suchmaschine

  30. 30 Marktanalysen Pharmamarkt – Suchmaschine

  31. 31 Marktanalysen Pharmamarkt - SellIn BU-/Linien-Ebene

  32. 32 Competitive Intelligence als weiteres Einsatzszenario Beispiel Shop/Handel: Mapping bspw.

    über den Weinnamen, falls keine eindeutige ID wie EAN Code vorhanden ist
  33. 33 Anwendungsfälle Datenstruktur und Verteilung Fallstricke Motivation

  34. 34 • Synchronisierung Systeme • Fehlersuche • Mehrere „Verursacher“ •

    Nachstellen Produktionsprobleme • Entwicklungssetup • Transaktionen Komplexität der Architektur steigt http://www.morguefile.com/archive/display/591261
  35. 35 Transaktionen

  36. 36 • Daten • Testbarkeit • Betrieb Was sollte außerdem

    im Auge behalten werden? http://www.morguefile.com/archive/display/183870
  37. 37 Fazit Was bringt die Umsetzung von Applikations-Logik auf Basis

    einer Suchmaschine? • Abfragen sind teilweise einfacher • Flexibler für Erweiterungen • Performance-Vorteile • Neue Anwendungsszenarien
  38. Partner: Fragen? Vielen Dank! http://blog.exensio.de @tokraft tobias.kraft@exensio.de