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

Be aware - Graphs are everywhere

Be aware - Graphs are everywhere

Graphen? Da war doch mal etwas in der Theorie...
Aber: Graphen sind überall, nicht nur in der Theorie.
Und: Graphenbasierte Datenbanken haben nur für Theoretiker etwas mit der Theorie zu tun.
Denn: Der Anteil der Theorie, der tatsächlich benötigt wird, ist intuitiver zu verstehen als die relationale Theorie: Gerade die Abbildung komplexer Beziehungen, die im alltäglichen Anwendungsfall auftretenden, lässt sich allzu oft intuitiver und effektiver durch graphenbasierte Lösungen umsetzen.

Holger Tiemeyer

March 22, 2018
Tweet

More Decks by Holger Tiemeyer

Other Decks in Technology

Transcript

  1. Holger Tiemeyer 25.11.2019 Be aware – Graphs are everywhere 2

    Schwerpunkte: • Softwarearchitektur und –beratung • Enterprise-Architektur • Softwareentwicklung Branchen: • Automotive • Health (Medizin und Pharmazie) • Banken/Versicherung • Telekommunikation
  2. Projektanforderung 25.11.2019 Be aware – Graphs are everywhere 4 Baubeschreibungen

    und Einrichtungshandbücher Zusammenführen in einer Anwendung Internationaler Kontext Definition eines Standards Landesspezifische Abweichungen vom Standard Strukturelle Zusammenstellung zu einem finalen Buch
  3. Projekt: Detailanforderungen – Hierarchie (Standard) 25.11.2019 Be aware – Graphs

    are everywhere 5 Land Region Gebäudetyp Umsatztyp Raumgruppe Raum Baugruppe Baumaterial Fabrikat Teilbereich Platzierungs- Warengruppe SAP- Warengruppe SAP- Untermaterial -gruppe SAP-Material
  4. Projekt: Detailanforderungen – Hierarchie (Abweichung) 25.11.2019 Be aware – Graphs

    are everywhere 6 Land Region Gebäudetyp Umsatztyp Raumgruppe Raum Baugruppe Baumaterial Fabrikat Teilbereich Platzierungs- Warengruppe SAP- Warengruppe SAP- Untermaterial -gruppe SAP-Material
  5. Projekt: Detailanforderungen - Fragestellungen 25.11.2019 Be aware – Graphs are

    everywhere 7 - In welchen Räumen befindet sich Gegenstand Y? - Welche Baumaterialien sind für den Umsatztyp I vorgesehen? - In welchen Aufenthaltsräumen befindet sich ein Fernseher mit Satellitenanlage vom Typ A.B? - Welchen Ländern ist Material X zugeordnet? - Welche Texte befinden sich aktuell in Übersetzung? - Wie war Gebäude A in Land B am 11.12.2017 ausgestattet?
  6. Herausforderung 25.11.2019 Be aware – Graphs are everywhere 8 Abbild

    auf relationale Struktur Zwischen jede mögliche Hierarchiebeziehungsstufe eine m:n-Relation einführen Komplexität der Queries (Joins) zu hoch Performanz der Abfragen zu niedrig
  7. NoSQL (Not only SQL) 25.11.2019 Be aware – Graphs are

    everywhere 9 Flexibel Einfachheit Einfaches Programmier- und Abfragemodell [Skalierbarkeit]
  8. Keine Angst vor Graphen 25.11.2019 Be aware – Graphs are

    everywhere 10 94% 5% 1% Reaktionen Graphen? Huh? Bist du dir wirklich sicher? Graphen? Ja, aber.. Graphen? Gute Idee.
  9. Property-Graphen 25.11.2019 Be aware – Graphs are everywhere 12 Definition:

    A property-graph is a directed, vertex-labeled, edge-labeled multigraph with self-edges, where edges have their own identity. => Den Knoten und Kanten können Eigenschaften zugeordnet werden.
  10. Graph: Knoten 25.11.2019 Be aware – Graphs are everywhere 13

    - „Label“ (1..n) - Eigenschaften als Key-Value-Paar
  11. Graph: Kanten 25.11.2019 Be aware – Graphs are everywhere 14

    - Können eine Richtung haben (eingehend, ausgehend, ungerichtet). - Können einen „Typ“ haben. - Können Eigenschaften besitzen.
  12. Microservice - Architektur 25.11.2019 Be aware – Graphs are everywhere

    16 Buchverwaltung REST-API Logik Persistenz Historie REST-API Logik Persistenz Medien REST-API Logik Persistenz Client (UI)
  13. Technologiestack 25.11.2019 Be aware – Graphs are everywhere 17 Microservices

    (Backend): - Spring-Boot: - Spring-Data-Neo4j - Object Graph Mapper (OGM) - Spring-HATEOAS (REST-Schnittstelle) Frontend: - Angular 2 (4)
  14. Buchverwaltung 25.11.2019 Be aware – Graphs are everywhere 18 Buchverwaltung

    REST-API Logik Persistenz Repository Proxy Daten- modell Service Facade API Resource Spring-Data- Neo4j (OGM) Spring-core Spring- HATEOAS
  15. Fachliche Modellierung 25.11.2019 Be aware – Graphs are everywhere 19

    Vorlagen Abbilder Buchstruktur Deutschland Italien Nord Universität Kapitel 1 Kapitel 2 Kapitel 3
  16. 25.11.2019 Be aware – Graphs are everywhere 22 Land Region

    Gebäudety p Umsatztyp Raumgrupp e Raum Baugruppe Baumaterial Fabrikat Teilbereich Platzierungs- Warengrupp e SAP- Warengruppe SAP- Untermaterial -gruppe SAP-Material - Welche Texte befinden sich aktuell in Übersetzung? - Wie war Gebäude A in Land B am 11.12.2017 ausgestattet? - In welchen Räumen befindet sich Gegenstand Y? - Welche Baumaterialien sind für den Umsatztyp I vorgesehen? - In welchen Aufenthaltsräumen befindet sich ein Fernseher mit Satellitenanlage vom Typ A.B? - Welchen Ländern ist Material X zugeordnet?