BigQuery Graph e standard ISO
Il documento descrive in che modo BigQuery Graph supporta il linguaggio di query standard internazionale ISO per i database di grafi.
BigQuery Graph si basa su due standard ISO:
- 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, 1ª edizione, 2024
Le tabelle seguenti descrivono la relazione di alto livello tra SQL/PGQ, GQL e il modo in cui BigQuery Graph supporta questi standard.
| Standard | SQL/PGQ | GQL | BigQuery Graph | |
|---|---|---|---|---|
| Query | Funzionalità di corrispondenza dei pattern del grafico | Condivide le funzionalità principali di Graph Pattern Matching Language (GPML) con GQL. | Condivide le funzionalità principali di GPML con SQL/PGQ. | Entrambi gli standard sono supportati. Per saperne di più, consulta Pattern GQL di BigQuery Graph. |
| Query | Altre funzionalità del linguaggio di query (ad esempio LIMIT, ORDER, aggregazione) |
Basato su SQL. | Simile a SQL, ma le funzionalità di query GQL sono istruzioni di query del grafico componibili in modo lineare. | Entrambi gli standard sono supportati. Per saperne di più, consulta le istruzioni di query GQL e la sintassi delle query in GoogleSQL di BigQuery Graph. |
| Query | Interoperabilità di grafici e tabelle | Supportato. | Non supportati. | Entrambi gli standard sono supportati. Per saperne di più, consulta Operatore GRAPH_TABLE. |
| Tipi | I tipi di dati, le funzioni e le espressioni in SQL/PGQ e GQL sono simili. | I tipi di dati, le funzioni e le espressioni in SQL/PGQ e GQL sono simili. | Supporta la maggior parte dei tipi di dati e delle espressioni in SQL/PGQ e GQL. Per saperne di più, consulta Tipi di dati in GoogleSQL. | |
| DML | SQL/PGQ eredita DML da SQL. | È supportato il linguaggio DML basato su grafi. | Supporta DML di manipolazione dei dati basato su tabelle SQL. Per ulteriori informazioni, consulta il linguaggio di manipolazione dei dati GoogleSQL. | |
| Schema | Supporta l'utilizzo di CREATE PROPERTY GRAPH dalle tabelle. |
Supporta l'utilizzo di CREATE PROPERTY GRAPH con tipi aperti e chiusi. |
Supporta il metodo SQL/PGQ. Per saperne di più, consulta la definizione di CREATE PROPERTY GRAPH. |
Supporto di SQL/PGQ
| Standard | ID funzionalità SQL/PGQ | BigQuery Graph |
|---|---|---|
| Query (interoperabilità di grafici e tabelle) | Funzionalità G900: GRAPH_TABLE |
Supportato. Per saperne di più, vedi l'operatore GRAPH_TABLE. |
| Schema | Funzionalità G924: clausola della chiave esplicita per le tabelle degli elementi. Ciò implica una dichiarazione di conformità alla funzionalità G920: grafici delle proprietà SQL basati su DDL. | Supportato. Per saperne di più, consulta la dichiarazione CREATE_PROPERTY_GRAPH. |
| Schema | Funzionalità G925: clausola esplicita per etichette e proprietà per le tabelle degli elementi. Ciò implica una dichiarazione di conformità alla funzionalità G920: grafici delle proprietà SQL basati su DDL. | Supportato. Per saperne di più, consulta la dichiarazione CREATE_PROPERTY_GRAPH. |
| Query (GPML) | Funzionalità G001: modalità di corrispondenza degli elementi ripetibili. | Supportato. La modalità di corrispondenza degli elementi ripetibili è la semantica predefinita. La sintassi della clausola della modalità di corrispondenza degli elementi ripetibili espliciti non è supportata. |
| Query (GPML) | Funzionalità G008: clausola WHERE del pattern del grafico. Ciò implica una dichiarazione di conformità alla funzionalità G000: pattern del grafico. |
Supportato. Per saperne di più, vedi Pattern del grafico. |
| Query (GPML) | Funzionalità G034: concatenazione dei percorsi. | Supportato. Per saperne di più, vedi Pattern del grafico. |
| Query (GPML) | Funzionalità G040: pattern del vertice. | Supportato. Per saperne di più, vedi Pattern elemento. |
| Query (GPML) | Funzionalità G042: motivi di riempimento di base. | Supportato. Per saperne di più, vedi Pattern elemento. |
| Query (GPML) | Funzionalità G070: Espressione etichetta: disgiunzione etichetta. | Supportato. Per saperne di più, consulta Espressione dell'etichetta. |
| Query (GPML) | Funzionalità G073: espressione dell'etichetta: nome della singola etichetta. | Supportato. Per saperne di più, consulta Espressione dell'etichetta. |
| Query (GPML) | Funzionalità G090: riferimento alla proprietà. | Supportato. |
Supporto di GQL
| Standard | ID funzionalità GQL | BigQuery Graph |
|---|---|---|
| Schema | Funzionalità GG02: grafico con un tipo di grafico chiuso. Conformità ad almeno uno dei seguenti standard: GG20, GG21, GG22 o GG23:
|
Supportato. Il supporto di GQL può essere scelto tra GG01: Graph with an open type o GG02. BigQuery Graph non supporta la stessa istruzione CREATE_GRAPH_TYPE di GQL. Tuttavia, l'istruzione CREATE_PROPERTY_GRAPH supportata da BigQuery Graph è strettamente correlata a GG02 (con un supporto simile per GG20, GG21, GG22 e GG23). |
| Struttura lessicale | "Una dichiarazione di conformità a una versione specifica dello standard Unicode® e alle versioni sincrone di Unicode Technical Standard n. 10, Unicode Standard Annex n. 15 e Unicode Standard Annex n. 31. La versione dichiarata dello standard Unicode® non deve essere inferiore a 13.0.0." | BigQuery Graph GQL condivide l'esatta struttura lessicale con GoogleSQL. Per un riferimento ai valori di escape Unicode, consulta Sequenze di escape per i valori letterali stringa e byte. |
| Tipi di dati | "Un'affermazione di conformità all'insieme di tutti i tipi di valori supportati come tipi di valori delle proprietà. Come minimo, questo set deve includere:
|
Supportato. Per ulteriori informazioni, consulta l'elenco completo dei tipi di dati supportati da BigQuery Graph GQL. |
Altre funzionalità
Le funzionalità elencate nelle sezioni precedenti sono le funzionalità di conformità minima degli standard. BigQuery Graph supporta funzionalità aggiuntive negli standard ISO. Per saperne di più, consulta Panoramica dello schema di BigQuery Graph e Panoramica di GQL.