Teilen über


Was ist eine Diagrammdatenbank?

Hinweis

Dieses Feature ist zurzeit als öffentliche Preview verfügbar. Diese Vorschauversion wird ohne Vereinbarung zum Servicelevel bereitgestellt und ist nicht für Produktionsworkloads vorgesehen. Manche Features werden möglicherweise nicht unterstützt oder sind nur eingeschränkt verwendbar. Weitere Informationen finden Sie unter Zusätzliche Nutzungsbestimmungen für Microsoft Azure-Vorschauen.

Eine Graphdatenbank modelliert Daten als Netzwerk verbundener Entitäten und Beziehungen. Der am häufigsten verwendete Diagrammdatenbanktyp implementiert das beschriftete Eigenschaftendiagrammmodell : Entitäten (Knoten) und Beziehungen (Kanten) können Bezeichnungen und Eigenschaften (Schlüsselwertpaare) aufweisen. Dieses flexible Modell ermöglicht sowohl schema-optionale als auch schemagesteuerte Designs und ermöglicht ihnen das Ausdrücken umfangreicher Semantik. Da Verbindungen explizit als Kanten gespeichert werden, durchlaufen Abfragen Beziehungen, indem sie Kanten folgen, anstatt teure Verknüpfungen zur Abfragezeit zu berechnen.

Von Bedeutung

In diesem Artikel wird ausschließlich das Beispieldiagramm-Dataset für soziale Netzwerke verwendet.

Kernkonzepte von Graph-Datenbanken

  • Knoten stellen Elemente wie Personen, Produkte oder Orte dar. Knoten können Bezeichnungen und Eigenschaften aufweisen, die ihre Attribute beschreiben.
  • Kanten stellen dar, wie diese Elemente verbunden sind, z. B. FRIENDS_WITH, GEKAUFT oder LOCATED_IN. Edges können auch Eigenschaften und Labels zum Codieren von Beziehungsmetadaten tragen.
  • Eigenschaften fügen Details zu Knoten und Kanten an (z. B. den Namen einer Person oder das Datum einer Kante). Da Beziehungen explizit als Kanten gespeichert werden, navigieren Abfragen im Diagramm, indem Sie Verbindungen folgen, anstatt sie zur Abfragezeit zu berechnen.

Wie das Abfragen von Beziehungen funktioniert

Graph-Abfragen rufen verbundene Informationen ab, indem sie von einem Startknoten zu dessen Nachbarn durchlaufen, dann zu deren Nachbarn und so weiter. Der Aufwand, den ein Traversal ausführt, ist an die Anzahl der Kanten gebunden, die es berührt (die lokale Nachbarschaft), nicht die Gesamtgröße des Datensatzes. Dies stellt Fragen zu Pfaden, Verbindungen und Mustern – wie Freunde von Freunden, kürzesten Pfaden oder Multi-Hop-Abhängigkeiten – natürlich und effizient zum Ausdruck.

Graph-Datenbanken verwenden musterbasierte Abfragesprachen, z. B. die zunehmend eingeführte Graph Query Language (GQL), um diese Traversale präzise zu beschreiben. GQL wird von derselben internationalen Arbeitsgruppe standardisiert, die SQL (ISO/IEC 39075) überwacht, wobei die Graphabfrage mit etablierten Datenbankstandards ausgerichtet wird.

Beispiel (Musterabgleich mit GQL):

MATCH (p:Person {firstName: "Annemarie"})-[:knows]->(friend)-[:likes]->(c:Comment)
RETURN c
ORDER BY c.creationDate
LIMIT 100

Das Muster lautet wie folgt: Beginnen Sie am Knoten "Person" für Annemarie, folgen Sie den :knows Kanten zu jedem Freund, folgen Sie dann den :likes Kanten zu verwandten :Comment Knoten und geben Sie die 100 neuesten dieser Kommentare zurück.

Modellierung und Schema

Graph-Datenmodelle sind Schema-optional: Sie können mit einem festen Schema arbeiten, wenn Sie eine starke Governance benötigen, oder das Modell weiterentwickeln, wenn neue Knotentypen, Beziehungen oder Eigenschaften auftauchen. Dieser Ansatz reduziert den Bedarf an Datenduplizierung und ermöglicht Teams die Vereinheitlichung von Daten aus mehreren Quellen, ohne dass eine hohe Neugestaltung im Voraus erforderlich ist.

Allgemeine Verwendungen für Graphdatenbanken

Graph-Datenbanken passen gut zu Bereichen, in denen Verbindungen wertvoll sind, wie zum Beispiel in sozialen Netzwerken, Wissensgraphen, Empfehlungssystemen, Betrugs- und Risikonetzwerken, Netzwerk- und IT-Topologie sowie der Abhängigkeitsanalyse in der Lieferkette. In diesen Szenarien drehen sich die Fragen weniger um einzelne Datensätze und mehr darum, wie viele Entitäten miteinander in Beziehung stehen und über mehrere Verbindungen interagieren.

Wann sollten Sie eine Diagrammdatenbank in Betracht ziehen?

Wählen Sie eine Graphdatenbank, wenn Ihre Hauptfragen Pfade, Nachbarschaften und Muster in verbundenen Daten betreffen; wenn die Anzahl der Sprünge variabel ist oder im Voraus nicht bekannt ist; oder wenn Sie Beziehungen zwischen unterschiedlichen Datensätzen kombinieren und navigieren müssen. Wenn dies die Fragen sind, die Sie wiederholt beantworten müssen, ist ein Diagrammmodell eine natürliche Passform.

Was ist mit ETL?

Die Darstellung Ihrer Daten als Diagramm und das Speichern in einer separaten, eigenständigen Graphdatenbank führt häufig zu ETL- und Governance-Overhead. Im Gegensatz dazu arbeitet Graph in Microsoft Fabric direkt auf OneLake, wodurch die Notwendigkeit separater ETL-Pipelines und Datenduplizierung reduziert oder eliminiert wird. Berücksichtigen Sie diese Kompromisse:

  • Datenverschiebung und Duplizierung: Eigenständige Diagrammdatenbanken erfordern in der Regel das Extrahieren, Transformieren und Laden von (ETL)-Daten in einen separaten Speicher, der die Komplexität erhöht und zu duplizierten Datasets führen kann. Graph in Microsoft Fabric arbeitet auf OneLake, sodass Sie verbundene Daten modellieren und abfragen können, ohne sie zu verschieben.
  • Betriebskosten: Eigenständige Diagrammstapel werden als separate Cluster oder Dienste ausgeführt und tragen häufig Leerlaufkosten. Graph-Workloads in Fabric verbrauchen gepoolte Kapazitätseinheiten (CUs) mit automatischer Herunterskalierung und zentralisierten Metriken, die Betriebsabläufe vereinfachen und Kosten senken können.
  • Skalierbarkeit: Einige eigenständige Graphdatenbanken hängen von skalierungs- oder herstellerspezifischem Clustering ab. Graph in Microsoft Fabric ist für große Diagramme konzipiert und verwendet skalierungsbasiertes Sharding über mehrere Mitarbeiter hinweg, um Big Data-Workloads effizient zu verarbeiten.
  • Tools und Fähigkeiten: Anbieterspezifische Diagrammsysteme können spezielle Sprachen und separate Analyseframeworks erfordern. Graph in Microsoft Fabric bietet einheitliche Modellierung, standardsbasierte Abfrage (GQL), integrierte Graph-Analysealgorithmen, BI- und KI-Integration sowie explorative Low/No-Code-Tools, damit eine breitere Gruppe von Benutzern mit verbundenen Daten arbeiten kann.
  • Governance und Sicherheit: Separate Graph-Bereitstellungen benötigen unabhängige Governance- und Sicherheitskonfigurationen. Graph in Microsoft Fabric verwendet OneLake-Governance, Lineage und arbeitsbereichsbasierte rollenbasierte Zugriffssteuerung (RBAC), sodass Compliance, Überwachung und Berechtigungen mit dem Rest Ihrer Fabric-Umgebung konsistent bleiben.