Spanner Graph y los estándares de la ISO

En esta página se describe cómo admite Spanner Graph el lenguaje de consulta estándar internacional ISO para bases de datos de gráficos.

Spanner Graph se basa en dos estándares ISO:

En las siguientes tablas se describe la relación de alto nivel entre SQL/PGQ y GQL, así como la forma en que Spanner Graph admite estos estándares.

Estándar SQL/PGQ GQL Spanner Graph
Consulta Funciones de coincidencia de patrones de gráficos Comparte las funciones principales de Graph Pattern Matching Language (GPML) con GQL. Comparte las funciones principales de GPML con SQL y PGQ. Se admiten ambos estándares. Para obtener más información, consulta los patrones de GQL de Spanner Graph.
Consulta Otras funciones del lenguaje de consulta (por ejemplo, LIMIT, ORDER y agregación) Basado en SQL. Es similar a SQL, pero las funciones de consulta de GQL son instrucciones de consulta de gráficos que se pueden componer de forma lineal. Se admiten ambos estándares. Para obtener más información, consulta las instrucciones de consulta de GQL y la sintaxis de las consultas en GoogleSQL de Spanner Graph.
Consulta Interoperabilidad de gráficos y tablas Compatible. No es compatible. Se admiten ambos estándares. Para obtener más información, consulta el operador GRAPH_TABLE.
Tipos Los tipos de datos, las funciones y las expresiones de SQL/PGQ y GQL son similares. Los tipos de datos, las funciones y las expresiones de SQL/PGQ y GQL son similares. Admite la mayoría de los tipos de datos y expresiones de SQL/PGQ y GQL. Para obtener más información, consulta Tipos de datos en GoogleSQL.
DML SQL/PGQ hereda DML de SQL. Se admite DML basado en gráficos. Admite DML basado en tablas SQL. Para obtener más información, consulta el lenguaje de manipulación de datos de GoogleSQL.
Esquema Permite usar CREATE PROPERTY GRAPH de tablas. Admite el uso de CREATE PROPERTY GRAPH con tipos abiertos y cerrados. Admite el método SQL/PGQ. Para obtener más información, consulta la definición de CREATE PROPERTY GRAPH.

Compatibilidad con SQL y PGQL

Estándar ID de la función SQL/PGQ Spanner Graph
Consulta (interoperabilidad de gráficos y tablas) Función G900: GRAPH_TABLE Compatible. Para obtener más información, consulta el operador GRAPH_TABLE.
Esquema Función G924: cláusula de clave explícita para tablas de elementos. Esto implica una declaración de conformidad con la función G920: gráficos de propiedades SQL basados en DDL. Compatible. Para obtener más información, consulta la CREATE_PROPERTY_GRAPHdeclaración.
Esquema Función G925: cláusula explícita de etiqueta y propiedades para tablas de elementos. Esto implica una declaración de conformidad con la función G920: gráficos de propiedades SQL basados en DDL. Compatible. Para obtener más información, consulta la CREATE_PROPERTY_GRAPHdeclaración.
Consulta (GPML) Función G001: modo de coincidencia de elementos repetibles. Compatible. El modo de coincidencia de elementos repetibles es la semántica predeterminada. No se admite la sintaxis de cláusula de modo de coincidencia de elementos repetibles explícitos.
Consulta (GPML) Característica G008: cláusula de patrón de gráfico WHERE. Esto implica una declaración de conformidad con la función G000: patrón de gráfico. Compatible. Para obtener más información, consulta Gráfico de patrones.
Consulta (GPML) Función G034: concatenación de rutas. Compatible. Para obtener más información, consulta Gráfico de patrones.
Consulta (GPML) Función G040: patrón de vértices. Compatible. Para obtener más información, consulta Patrón de elemento.
Consulta (GPML) Función G042: patrones básicos de borde completo. Compatible. Para obtener más información, consulta Patrón de elemento.
Consulta (GPML) Función G070: expresión de etiqueta: disyunción de etiquetas. Compatible. Para obtener más información, consulta Expresión de etiqueta.
Consulta (GPML) Función G073: expresión de etiqueta: nombre de etiqueta individual. Compatible. Para obtener más información, consulta Expresión de etiqueta.
Consulta (GPML) Función G090: referencia de propiedad. Compatible.

Compatibilidad con GQL

Estándar ID de la función de GQL Spanner Graph
Esquema Función GG02: gráfico con un tipo de gráfico cerrado. Cumplimiento de al menos uno de los estándares GG20, GG21, GG22 o GG23:
  • Característica GG20: nombres de tipo de elemento explícitos.
  • Función GG21: conjuntos de etiquetas de clave de tipo de elemento explícitos.
  • Función GG22: inferencia del conjunto de etiquetas de clave de tipo de elemento.
  • Función GG22: inferencia del conjunto de etiquetas de clave de tipo de elemento.
  • Función GG23: conjuntos de etiquetas de clave de tipo de elemento opcional.
Compatible. Puedes elegir la compatibilidad con GQL en GG01: gráfico con un tipo abierto o GG02.
Spanner Graph no admite la misma instrucción CREATE_GRAPH_TYPE que GQL. Sin embargo, la sentencia CREATE_PROPERTY_GRAPH compatible con Spanner Graph está estrechamente relacionada con GG02 (con una compatibilidad similar con GG20, GG21, GG22 y GG23).
Estructura léxica "Una declaración de conformidad con una versión específica del estándar Unicode® y las versiones síncronas del estándar técnico Unicode n.º 10, el anexo del estándar Unicode n.º 15 y el anexo del estándar Unicode n.º 31. La versión declarada de The Unicode® Standard no debe ser inferior a 13.0.0". GQL de Spanner Graph comparte la misma estructura léxica que GoogleSQL. Para consultar los valores de escape Unicode, consulte Secuencias de escape para literales de cadena y de bytes.
Tipos de datos "Una reclamación de conformidad con el conjunto de todos los tipos de valores que se admiten como tipos de valores de propiedad. Como mínimo, este conjunto debe incluir lo siguiente:
  • El tipo de cadena de caracteres especificado por STRING o VARCHAR.
  • El tipo booleano especificado por BOOLEAN o BOOL.
  • El tipo de número entero normal con signo especificado por SIGNED INTEGER, INTEGER o INT.
  • El tipo numérico aproximado especificado por FLOAT".
Compatible. Para obtener más información, consulta la lista completa de tipos de datos admitidos por GQL de Spanner Graph.

Más funciones

Las funciones que se indican en las secciones anteriores son las funciones de conformidad mínimas de los estándares. Spanner Graph admite funciones adicionales en los estándares ISO. Para obtener más información, consulta la descripción general del esquema de Spanner Graph y la descripción general de GQL.