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 – Information technology — Database languages SQL Property Graph Queries (SQL/PGQ), Edition 1, 2023
- ISO/IEC 39075:2024 – Information technology — Database languages — GQL, Edition 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 Abgleich von Graphmustern | Teilt die Kernfunktionen der Graph Pattern Matching Language (GPML) mit GQL. | Teilt die Kernfunktionen der GPML mit SQL/PGQ. | Beide Standards werden unterstützt. Weitere Informationen finden Sie unter BigQuery Graph GQL-Muster. |
| Abfrage | Andere Abfragesprachfunktionen (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 BigQuery Graph GQL-Abfrageanweisungen und Abfragesyntax in GoogleSQL. |
| Abfrage | Interoperabilität von Graphen 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 erbt DML von SQL. | Graphbasierte DML wird unterstützt. | Unterstützt SQL-tabellenbasierte DML. Weitere Informationen finden Sie unter der Datenbearbeitungssprache in GoogleSQL. | |
| 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 unter CREATE PROPERTY GRAPH-Definition. |
SQL/PGQ-Unterstützung
| Standard | SQL/PGQ-Feature-ID | BigQuery Graph |
|---|---|---|
| Abfrage (Interoperabilität von Graphen und Tabellen) | Feature G900: GRAPH_TABLE |
Unterstützt. Weitere Informationen finden Sie unter GRAPH_TABLE-Operator. |
| Schema | Feature G924: Explizite Schlüsselklausel für Elementtabellen. Dies impliziert einen Anspruch auf Konformität mit Feature G920: DDL-basierte SQL-Eigenschaftsgraphen. | Unterstützt. Weitere Informationen finden Sie unter CREATE_PROPERTY_GRAPH-Anweisung. |
| Schema | Feature G925: Explizite Klausel für Labels und Attribute für Elementtabellen. Dies impliziert einen Anspruch auf Konformität mit Feature G920: DDL-basierte SQL-Eigenschaftsgraphen. | Unterstützt. Weitere Informationen finden Sie unter CREATE_PROPERTY_GRAPH-Anweisung. |
| Abfrage (GPML) | Feature G001: Abgleichmodus für wiederholbare Elemente. | Unterstützt. Der Abgleichmodus für wiederholbare Elemente ist die semantische Standardeinstellung. Die explizite Syntax für die Klausel zum Abgleichmodus für wiederholbare Elemente wird nicht unterstützt. |
| Abfrage (GPML) | Feature G008: WHERE-Klausel für Graphmuster. Dies impliziert einen Anspruch auf Konformität mit Feature G000: Graphmuster. |
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: Knotenmuster. | Unterstützt. Weitere Informationen finden Sie unter Elementmuster. |
| Abfrage (GPML) | Feature G042: Einfache vollständige Kantenmuster. | 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: Einzelner Labelname. | Unterstützt. Weitere Informationen finden Sie unter Labelausdruck. |
| Abfrage (GPML) | Feature G090: Attributreferenz. | Unterstützt. |
GQL-Unterstützung
| Standard | GQL-Feature-ID | BigQuery Graph |
|---|---|---|
| Schema | Feature GG02: Graph mit einem geschlossenen Graph-Typ. Konformität mit mindestens einem der folgenden Features: GG20, GG21, GG22 oder GG23:
|
Unterstützt. Die GQL-Unterstützung kann aus GG01: Graph 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 | „Ein Anspruch auf Konformität mit einer bestimmten Version des Unicode®-Standards und den synchronen Versionen des Unicode Technical Standard #10, des Unicode Standard Annex #15 und des Unicode Standard Annex #31. Die beanspruchte Version des Unicode®-Standards muss mindestens 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 | „Ein Anspruch auf Konformität mit der Menge aller Werttypen, die als Typen von Attributwerten unterstützt werden. Diese Menge muss mindestens Folgendes enthalten:
|
Unterstützt. Eine vollständige Liste der von BigQuery Graph GQL unterstützten Datentypen finden Sie hier. |
Zusätzliche Funktionen
Die in den vorherigen Abschnitten aufgeführten Funktionen sind die Mindestanforderungen für die Konformität mit den Standards. BigQuery Graph unterstützt zusätzliche Funktionen in den ISO-Standards. Weitere Informationen finden Sie unter BigQuery Graph-Schemaübersicht und GQL-Übersicht.