Auf der Seite wird beschrieben, wie Spanner Graph die internationale ISO-Standardabfragesprache für Graphdatenbanken unterstützt.
Spanner Graph basiert auf zwei ISO-Standards:
- ISO/IEC 9075-16:2023 – Informationstechnik – Datenbanksprachen: SQL-Property-Graph-Abfragen (SQL/PGQ), 1. Ausgabe, 2023
- ISO/IEC 39075:2024 – Informationstechnik – Datenbanksprachen – GQL, 1. Ausgabe, 2024
In den folgenden Tabellen wird die Beziehung zwischen SQL/PGQ und GQL beschrieben und wie Spanner Graph diese Standards unterstützt.
Standard | SQL/PGQ | GQL | Cloud Spanner Graph | |
---|---|---|---|---|
Abfrage | Funktionen für den Musterabgleich in Graphen | Die wichtigsten Funktionen von GPML (Graph Pattern Matching Language) sind mit GQL identisch. | Die GPML-Kernfunktionen sind mit SQL/PGQ identisch. | Beide Standards werden unterstützt. Weitere Informationen finden Sie unter GQL-Muster für Spanner-Graphen. |
Abfrage | Andere Funktionen der Abfragesprache (z. B. LIMIT , ORDER , Aggregation) |
SQL-basiert. | Ähnlich wie SQL, aber die GQL-Abfragefunktionen sind linear zusammensetzbare Graphabfrageanweisungen. | Beide Standards werden unterstützt. Weitere Informationen finden Sie unter GQL-Abfrageanweisungen für Spanner-Graphen und Abfragesyntax in GoogleSQL. |
Abfrage | Interoperabilität von Diagrammen und Tabellen | Unterstützt. | Nicht unterstützt. | Beide Standards werden unterstützt. Weitere Informationen finden Sie unter GRAPH_TABLE -Operator. |
Typen | Datentypen, Funktionen und Ausdrücke in SQL/PGQ und GQL sind ähnlich. | Datentypen, Funktionen und Ausdrücke in SQL/PGQ und GQL sind ähnlich. | Unterstützt die meisten Datentypen und Ausdrücke in SQL/PGQ und GQL. Weitere Informationen finden Sie unter Datentypen in GoogleSQL. | |
DML | SQL/PGQ übernimmt die DML von SQL. | Graphenbasierte DML wird unterstützt. | Unterstützt SQL-Tabellenbasierte DML. Weitere Informationen finden Sie in der GoogleSQL-Datenmanipulationssprache. | |
Schema | Unterstützt die Verwendung von CREATE PROPERTY GRAPH aus Tabellen. |
Unterstützt die Verwendung von CREATE PROPERTY GRAPH mit offenen und geschlossenen Typen. |
Unterstützt die SQL/PGQ-Methode. Weitere Informationen finden Sie in der Definition von CREATE PROPERTY GRAPH . |
SQL/PGQ-Unterstützung
Standard | SQL/PGQ-Funktions-ID | Cloud Spanner Graph |
---|---|---|
Abfrage (Interoperabilität von Diagrammen und Tabellen) | Funktion G900: GRAPH_TABLE |
Unterstützt. Weitere Informationen finden Sie unter GRAPH_TABLE -Operator. |
Schema | Feature G924: Explizite Schlüsselklausel für Elementtabellen. Dies impliziert die Einhaltung von Feature G920: DDL-basierte SQL-Property-Graphen. | Unterstützt. Weitere Informationen finden Sie unter CREATE_PROPERTY_GRAPH -Anweisung. |
Schema | Funktion G925: Ausdrückliche Label- und Eigenschaftenklausel für Elementtabellen Dies impliziert die Einhaltung des Features G920: DDL-basierte SQL-Property-Graphen. | Unterstützt. Weitere Informationen finden Sie unter CREATE_PROPERTY_GRAPH -Anweisung. |
Abfrage (GPML) | Funktion G001: Abgleichsmodus für wiederholbare Elemente | Unterstützt. Der Abgleichsmodus für wiederholbare Elemente ist die Standardsemantik. Die Syntax der Klausel für den Abgleichsmodus für explizit wiederholbare Elemente wird nicht unterstützt. |
Abfrage (GPML) | Feature G008: Graphmuster WHERE -Klausel. Dies impliziert einen Anspruch auf Übereinstimmung mit der Funktion G000: Graphmuster. |
Unterstützt. Weitere Informationen finden Sie unter Graphmuster. |
Abfrage (GPML) | Merkmal G034: Pfadkonkatenierung | Unterstützt. Weitere Informationen finden Sie unter Diagrammmuster. |
Abfrage (GPML) | Element G040: Knotenmuster. | Unterstützt. Weitere Informationen finden Sie unter Elementmuster. |
Abfrage (GPML) | Merkmal G042: Grundlegende Muster für volle Ränder | Unterstützt. Weitere Informationen finden Sie unter Elementmuster. |
Abfrage (GPML) | Funktion G070: Labelausdruck: Labelausschluß | Unterstützt. Weitere Informationen finden Sie unter Labelausdruck. |
Abfrage (GPML) | Funktion G073: Labelausdruck: Name des einzelnen Labels. | Unterstützt. Weitere Informationen finden Sie unter Labelausdruck. |
Abfrage (GPML) | Element G090: Property-Referenz. | Unterstützt. |
GQL-Unterstützung
Standard | GQL-Feature-ID | Cloud Spanner Graph |
---|---|---|
Schema | Feature GG02: Diagramm mit geschlossenem Diagrammtyp Konformität mit mindestens einer der folgenden Normen: GG20, GG21, GG22 oder GG23:
|
Unterstützt. Für den GQL-Support können Sie GG01: Graph mit offenem Typ oder GG02 auswählen. Spanner Graph unterstützt nicht genau dieselbe CREATE_GRAPH_TYPE -Anweisung wie GQL. Die von Spanner Graph unterstützte CREATE_PROPERTY_GRAPH -Anweisung ist jedoch eng mit GG02 verwandt (mit ähnlicher Unterstützung für GG20, GG21, GG22 und GG23). |
Lexikalische Struktur | „Eine Konformitätserklärung für eine bestimmte Version des Unicode®-Standards und die synchronen Versionen des Unicode Technical Standard 10, des Unicode Standard Annex 15 und des Unicode Standard Annex 31. Die angegebene Version des Unicode®-Standards darf nicht niedriger als 13.0.0 sein.“ | Spanner Graph GQL hat dieselbe lexikalische Struktur wie GoogleSQL. Informationen zu Unicode-Escape-Werten finden Sie unter Escapesequenzen für String- und Byteliterale. |
Datentypen | „Eine Behauptung, dass der Wert dem Satz aller Werttypen entspricht, die als Typen von Property-Werten unterstützt werden. Dieser Satz muss mindestens Folgendes enthalten:
|
Unterstützt. Weitere Informationen finden Sie in der vollständigen Liste der von Spanner Graph GQL unterstützten Datentypen. |
Zusätzliche Funktionen
Die in den vorherigen Abschnitten aufgeführten Funktionen sind die Mindestanforderungen der Standards. Spanner Graph unterstützt zusätzliche Funktionen in den ISO-Standards. Weitere Informationen finden Sie unter Spanner-Graphschema – Übersicht und GQL – Übersicht.