Google admite controladores de Spanner de código abierto para varias bibliotecas y frameworks populares de asignación relacional de objetos (ORM). Estos controladores permiten el uso de bases de datos de Spanner a través de APIs definidas por aquellas los frameworks de IA.
En las siguientes tablas, se enumeran todos los ORM y controladores de código abierto que son compatibles con Spanner y las funciones que admite cada uno. Hay una tabla para cada dialecto de SQL compatible.
También puedes usar las bibliotecas cliente de Spanner para acceder a la API de Spanner. Para obtener más información, consulta Bibliotecas cliente de Spanner.
Controladores y ORM de GoogleSQL
Atributo | base_de_datos/sql | GORM | JDBC de Spanner | Hibernate | Datos de Spring | R2DBC* | Framework de entidad | Registro activo | SQLAlchemy | Django | NHibernate |
---|---|---|---|---|---|---|---|---|---|---|---|
Idioma | Go | Go | Java | Java | Java | Java | C# | Ruby | Python | Python | C# |
Sugerencias de instrucciones | † | ||||||||||
Mutaciones | |||||||||||
DML por lotes | |||||||||||
DDL por lotes | |||||||||||
Lecturas inactivas | |||||||||||
Tablas intercaladas | |||||||||||
DML particionado | |||||||||||
Etiquetado de sesión | |||||||||||
Prioridad de las solicitudes | |||||||||||
Tipo de JSON | |||||||||||
Etiquetado de solicitudes | |||||||||||
Dialecto de SQL de Google | |||||||||||
Dialecto de PostgreSQL | |||||||||||
Limitaciones | Ver | Ver | Ver | Ver | Ver | Ver | Ver |
* Esta columna describe R2DBC cuando se usa específicamente con Spring Data.
† Disponible solo cuando se envían consultas en SQL literales, a través de Spring Data
@Query
.
Controladores de PostgreSQL y ORM
Todos los controladores de PostgreSQL requieren que el proxy de PGAdapter esté en ejecución. Para obtener más información, consulta Acerca de PGAdapter.
Atributo | Spanner JDBC | JDBC de PostgreSQL | Hibernate | pgx | GORM | psycopg2 | psycopg3 | SQLAlchemy 2 | node-postgres |
---|---|---|---|---|---|---|---|---|---|
Idioma | Java | Java | Java | Go | Go | Python | Python | Python | Node.js |
Sugerencias de instrucciones | |||||||||
Mutaciones | |||||||||
DML por lotes | |||||||||
DDL por lotes | |||||||||
Lecturas inactivas | |||||||||
Tablas intercaladas | |||||||||
DML particionado | |||||||||
Etiquetado de sesión | |||||||||
Prioridad de las solicitudes | |||||||||
Etiquetado de solicitudes | |||||||||
Limitaciones | Ver | Ver | Ver | Ver | Ver | Ver | Ver | Ver |