BigQuery Graph und ISO-Standards
In diesem Dokument wird beschrieben, wie BigQuery Graph die internationale ISO-Standardabfragesprache für Graphdatenbanken unterstützt.
BigQuery Graph basiert auf zwei ISO-Standards:
- ISO/IEC 9075-16:2023 – Informationstechnik – Datenbanksprachen SQL Property Graph Queries (SQL/PGQ), Ausgabe 1, 2023
- ISO/IEC 39075:2024 – Informationstechnologie – Datenbanksprachen – GQL, Ausgabe 1, 2024
In den folgenden Tabellen wird die allgemeine Beziehung zwischen SQL/PGQ und GQL beschrieben und wie BigQuery Graph diese Standards unterstützt.
| Standard | SQL/PGQ | GQL | BigQuery-Graph | |
|---|---|---|---|---|
| Abfrage | Funktionen für den Musterabgleich in Diagrammen | Teilt die grundlegenden Funktionen der Graph Pattern Matching Language (GPML) mit GQL. | Teilt die wichtigsten GPML-Funktionen mit SQL/PGQ. | Beide Standards werden unterstützt. Weitere Informationen finden Sie unter GQL-Muster für BigQuery Graph. |
| 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 BigQuery Graph 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 DML von SQL. | Graphbasierte DML wird unterstützt. | Unterstützt SQL-tabellenbasierte DML. Weitere Informationen finden Sie unter GoogleSQL-Datenbearbeitungssprache. | |
| 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-Feature-ID | BigQuery-Graph |
|---|---|---|
| Abfrage (Interoperabilität von Diagramm und Tabelle) | Feature G900: GRAPH_TABLE |
Unterstützt. Weitere Informationen finden Sie unter dem Operator GRAPH_TABLE. |
| Schema | Feature G924: Explizite Schlüsselklausel für Elementtabellen. Dies impliziert einen Anspruch auf Konformität mit Feature G920: DDL-basierte SQL-Property-Graphen. | Unterstützt. Weitere Informationen finden Sie unter CREATE_PROPERTY_GRAPH-Anweisung. |
| Schema | Feature G925: Explizite Label- und Attributklausel für Elementtabellen. Dies impliziert einen Anspruch auf Konformität mit Feature G920: DDL-basierte SQL-Property-Graphen. | Unterstützt. Weitere Informationen finden Sie unter CREATE_PROPERTY_GRAPH-Anweisung. |
| Abfrage (GPML) | Feature G001: Abgleichmodus für wiederholbare Elemente. | Unterstützt. Der Modus für wiederholbare Elemente ist die Standardsemantik. Die Syntax für die explizite Klausel für den Übereinstimmungsmodus für wiederholbare Elemente wird nicht unterstützt. |
| Abfrage (GPML) | Feature G008: Graphmuster-WHERE-Klausel. Dies impliziert eine Konformitätsbehauptung mit Feature G000: Graph pattern. |
Unterstützt. Weitere Informationen finden Sie unter Graphmuster. |
| Abfrage (GPML) | Feature G034: Pfadverkettung. | Unterstützt. Weitere Informationen finden Sie unter Graphmuster. |
| Abfrage (GPML) | Feature G040: Vertex-Muster. | Unterstützt. Weitere Informationen finden Sie unter Elementmuster. |
| Abfrage (GPML) | Funktion G042: Grundlegende Muster für den gesamten Rand. | Unterstützt. Weitere Informationen finden Sie unter Elementmuster. |
| Abfrage (GPML) | Feature G070: Labelausdruck: Labeldisjunktion. | Unterstützt. Weitere Informationen finden Sie unter Labelausdruck. |
| Abfrage (GPML) | Feature G073: Labelausdruck: Name des einzelnen Labels. | Unterstützt. Weitere Informationen finden Sie unter Labelausdruck. |
| Abfrage (GPML) | Feature G090: Property-Referenz. | Unterstützt. |
GQL-Unterstützung
| Standard | GQL-Feature-ID | BigQuery-Graph |
|---|---|---|
| Schema | Merkmal GG02: Graph mit einem geschlossenen Graphtyp. Konformität mit mindestens einem der folgenden Standards: GG20, GG21, GG22 oder GG23:
|
Unterstützt. Die GQL-Unterstützung kann aus GG01: Grafik mit einem offenen Typ oder GG02 ausgewählt werden. BigQuery Graph unterstützt nicht genau dieselbe CREATE_GRAPH_TYPE-Anweisung wie GQL. Die von BigQuery 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 Erklärung der Konformität mit einer bestimmten Version des Unicode®-Standards und den synchronen Versionen des Unicode Technical Standard Nr. 10, des Unicode Standard Annex Nr. 15 und des Unicode Standard Annex Nr. 31. Die angegebene Version des Unicode®-Standards darf nicht kleiner als 13.0.0 sein.“ | BigQuery Graph GQL hat genau dieselbe lexikalische Struktur wie GoogleSQL. Informationen zu Unicode-Escape-Werten finden Sie unter Escapesequenzen für String- und Byteliterale. |
| Datentypen | "Eine Erklärung zur Konformität mit der Gruppe aller Werttypen, die als Typen von Attributwerten unterstützt werden. Dieses Set muss mindestens Folgendes enthalten:
|
Unterstützt. Weitere Informationen finden Sie in der vollständigen Liste der von BigQuery Graph GQL unterstützten Datentypen. |
Zusätzliche Funktionen
Die in den vorherigen Abschnitten aufgeführten Funktionen sind die Mindestkonformitätsfunktionen der Standards. BigQuery Graph unterstützt zusätzliche Funktionen in den ISO-Standards. Weitere Informationen finden Sie unter BigQuery Graph-Schema – Übersicht und GQL – Übersicht.