Spring GDS 25. Jubiläum
Ein Logistikunternehmen, das in 190 Länder versendet, hat etwas gebaut, um an sich selbst zu liefern.
Neo4j ist eine Graphdatenbank. Statt Tabellen und Zeilen speichert sie Daten als Knoten und die Beziehungen zwischen ihnen und behandelt diese Verbindungen als gleichrangige Bürger, die Sie direkt abfragen können. Sie schreiben Abfragen in Cypher, einer Sprache, die fast wie ein Satz liest, der das Muster beschreibt, das Sie finden wollen.
Das zählt, wenn die Verbindungen der Punkt sind. In einer relationalen Datenbank bedeutet die Frage "welche Freunde meiner Freunde haben dieses Produkt auch gekauft" das wiederholte Verknüpfen von Tabellen, und die Leistung bricht ein, je länger die Ketten werden. Neo4j durchläuft die Beziehungen nativ, sodass eine Abfrage, die sechs Verbindungsgrade durchquert, schnell bleibt. Empfehlungsmaschinen, Betrugserkennung und soziale Netzwerke stützen sich darauf. Eine Bank, die einen Ring von Konten erkennt, die Geld in einer verdächtigen Schleife bewegen, ist ein Problem, das Graphen weit natürlicher lösen als Zeilen und Spalten.
Der Kompromiss ist der Fokus. Neo4j ist exzellent bei verbundenen Daten und überzogen für einfache, flache Datensätze, bei denen eine relationale Datenbank oder ein Dokumentspeicher die Aufgabe mit weniger Aufwand erledigt. Die Frage ist selten, ob Neo4j gut ist. Sie ist, ob Ihre Daten die Form eines Graphen haben.
Wir greifen zu Neo4j, wenn ein Projekt mit den Beziehungen steht und fällt. Empfehlungslogik, Berechtigungshierarchien, alles, wo der Wert darin liegt, wie die Dinge verbunden sind, und nicht in den Dingen selbst. Es ist ein Spezialwerkzeug, und wir behandeln es so.
Der ehrliche Teil dieser Arbeit ist die Modellierung. Einen guten Graphen zu entwerfen heißt, gründlich darüber nachzudenken, was als Knoten zählt und was als Beziehung, und das früh falsch zu machen ist teuer rückgängig zu machen. Wir arbeiten das mit Kunden durch, bevor wir uns festlegen, denn eine Graphdatenbank ist eine starke Wahl für das richtige Problem und eine schwere für die falsche Passung. Wenn die Daten wirklich verbunden sind, verwandelt Cypher Abfragen, die in SQL schmerzhaft wären, in etwas Lesbares und Schnelles.
Sitzen Sie auf Daten, bei denen die Beziehungen der echte Wert sind? Bilden wir sie ab.
Ein Logistikunternehmen, das in 190 Länder versendet, hat etwas gebaut, um an sich selbst zu liefern.
Eine Marke in ein funktionierendes Geschäft verwandeln.
Eine halbe Million Menschen. Eine App. Null Chaos.















