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:

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:
  • Feature GG20: Explizite Namen für Elementtypen.
  • Feature GG21: Explizite Labelsätze für Elementtypschlüssel.
  • Feature GG22: Ableitung von Labelsätzen für Elementtypschlüssel.
  • Feature GG22: Ableitung von Labelsätzen für Elementtypschlüssel.
  • Feature GG23: Optionale Labelsätze für Elementtypschlüssel.
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:
  • Der Zeichenfolgentyp, der durch STRING oder VARCHAR angegeben wird.
  • Der boolesche Typ, der durch BOOLEAN oder BOOL angegeben wird.
  • Der reguläre vorzeichenbehaftete Ganzzahltyp, der durch SIGNED INTEGER, INTEGER, oder INT angegeben wird.
  • Der ungefähre numerische Typ, der durch FLOAT angegeben wird.“
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.