BigQuery Graph et normes ISO
Ce document explique comment BigQuery Graph est compatible avec le langage de requête de norme internationale ISO pour les bases de données de graphes.
BigQuery Graph est basé sur deux normes 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, Edition 1, 2024
Les tableaux suivants décrivent la relation de haut niveau entre SQL/PGQ, GQL et la manière dont BigQuery Graph est compatible avec ces normes.
| Standard | SQL/PGQ | GQL | BigQuery Graph | |
|---|---|---|---|---|
| Requête | Fonctionnalités de correspondance de modèle de graphe | Partage les fonctionnalités de base du langage GPML (Graph Pattern Matching Language) avec GQL. | Partage les fonctionnalités de base du langage GPML avec SQL/PGQ. | Les deux normes sont compatibles. Pour en savoir plus, consultez la section Modèles GQL de BigQuery Graph . |
| Requête | Autres fonctionnalités du langage de requête (par exemple, LIMIT, ORDER, agrégation) |
Basé sur SQL. | Semblable à SQL, mais les fonctionnalités de requête GQL sont des instructions de requête de graphe composables de manière linéaire. | Les deux normes sont compatibles. Pour en savoir plus, consultez la section Instructions de requête GQL de BigQuery Graph GQL query statements et Syntaxe des requêtes dans GoogleSQL. |
| Requête | Interopérabilité entre graphes et tables | Compatible | Non compatible | Les deux normes sont compatibles. Pour en savoir plus, consultez l'opérateur GRAPH_TABLE. |
| Types | Les types de données, les fonctions et les expressions dans SQL/PGQ et GQL sont similaires. | Les types de données, les fonctions et les expressions dans SQL/PGQ et GQL sont similaires. | Compatible avec la plupart des types de données et des expressions dans SQL/PGQ et GQL. Pour en savoir plus, consultez la section Types de données dans GoogleSQL. | |
| DML | SQL/PGQ hérite du LMD de SQL. | Le LMD basé sur les graphes est compatible. | Compatible avec le LMD basé sur les tables SQL. Pour en savoir plus, consultez la section Langage de manipulation de données GoogleSQL. | |
| Schéma | Compatible avec l'utilisation de CREATE PROPERTY GRAPH à partir de tables. |
Compatible avec l'utilisation de CREATE PROPERTY GRAPH avec des types ouverts et des types fermés. |
Compatible avec la méthode SQL/PGQ. Pour en savoir plus, consultez la CREATE PROPERTY GRAPH définition. |
Compatibilité avec SQL/PGQ
| Standard | ID de fonctionnalité SQL/PGQ | BigQuery Graph |
|---|---|---|
| Requête (Interopérabilité entre graphes et tables) | Fonctionnalité G900 : GRAPH_TABLE |
Compatible Pour en savoir plus, consultez l'opérateur GRAPH_TABLE. |
| Schéma | Fonctionnalité G924 : clause de clé explicite pour les tables d'éléments. Cela implique une revendication de conformité avec la fonctionnalité G920 : graphes de propriétés SQL basés sur le LDD. | Compatible Pour en savoir plus, consultez CREATE_PROPERTY_GRAPH instruction. |
| Schéma | Fonctionnalité G925 : clause de libellé et de propriétés explicites pour les tables d'éléments. Cela implique une revendication de conformité avec la fonctionnalité G920 : graphes de propriétés SQL basés sur le LDD. | Compatible Pour en savoir plus, consultez CREATE_PROPERTY_GRAPH instruction. |
| Requête (GPML) | Fonctionnalité G001 : mode de correspondance des éléments répétables. | Compatible Le mode de correspondance des éléments répétables est la sémantique par défaut. La syntaxe explicite de la clause de mode de correspondance des éléments répétables n'est pas compatible. |
| Requête (GPML) | Fonctionnalité G008 : clause WHERE du modèle de graphe. Cela implique une revendication de conformité avec la fonctionnalité G000 : modèle de graphe. |
Compatible Pour en savoir plus, consultez la section Modèle de graphe. |
| Requête (GPML) | Fonctionnalité G034 : concaténation de chemins. | Compatible Pour en savoir plus, consultez la section Modèle de graphe. |
| Requête (GPML) | Fonctionnalité G040 : modèle de sommet. | Compatible Pour en savoir plus, consultez la section Modèle d'élément. |
| Requête (GPML) | Fonctionnalité G042 : modèles d'arêtes complets de base. | Compatible Pour en savoir plus, consultez la section Modèle d'élément. |
| Requête (GPML) | Fonctionnalité G070 : expression de libellé : disjonction de libellé. | Compatible Pour en savoir plus, consultez la section Expression de libellé. |
| Requête (GPML) | Fonctionnalité G073 : expression de libellé : nom de libellé individuel. | Compatible Pour en savoir plus, consultez la section Expression de libellé. |
| Requête (GPML) | Fonctionnalité G090 : référence de propriété. | Compatible |
Compatibilité avec GQL
| Standard | ID de fonctionnalité GQL | BigQuery Graph |
|---|---|---|
| Schéma | Fonctionnalité GG02 : graphe avec un type de graphe fermé. Conformité avec au moins l'une des fonctionnalités GG20, GG21, GG22 ou GG23 :
|
Compatible La compatibilité avec GQL peut être choisie parmi GG01 : graphe avec un type ouvert ou GG02. BigQuery Graph n'est pas compatible avec la même instruction CREATE_GRAPH_TYPE que GQL. Toutefois, l'CREATE_PROPERTY_GRAPHinstruction compatible avec BigQuery Graph est étroitement liée à GG02 (avec une compatibilité similaire pour GG20, GG21, GG22 et GG23). |
| Structure lexicale | "Revendication de conformité avec une version spécifique de la norme Unicode® et les versions synchrones de la norme technique Unicode n° 10, de l'annexe n° 15 de la norme Unicode et de l'annexe n° 31 de la norme Unicode. La version revendiquée de la norme Unicode® ne doit pas être inférieure à 13.0.0." | Le langage GQL de BigQuery Graph partage la même structure lexicale que GoogleSQL. Pour obtenir une référence aux valeurs d'échappement Unicode, consultez la section Séquences d'échappement pour les littéraux de types chaîne et octet. |
| Types de données | "Revendication de conformité avec l'ensemble de tous les types de valeurs compatibles en tant que types de valeurs de propriétés. Au minimum, cet ensemble doit inclure :
|
Compatible Pour obtenir la liste complète des types de données compatibles avec le langage GQL de BigQuery Graph, consultez cette page. |
Autres fonctionnalités
Les fonctionnalités listées dans les sections précédentes sont les fonctionnalités de conformité minimales des normes. BigQuery Graph est compatible avec d'autres fonctionnalités des normes ISO. Pour en savoir plus, consultez les sections Présentation du schéma BigQuery Graph et Présentation de GQL.