Cette page décrit les pilotes compatibles avec Spanner pour les bases de données au format Google SQL et au format PostgreSQL.
Google accepte les pilotes Spanner Open Source pour plusieurs bibliothèques de mappage objet-relationnel (ORM) et frameworks populaires. Ces pilotes permettent d'utiliser des bases de données Spanner via des API définies par ces frameworks.
Les tableaux suivants répertorient tous les ORM et pilotes Open Source compatibles avec Spanner, ainsi que les fonctionnalités compatibles avec chacun. Il existe une table pour chaque dialecte SQL compatible.
Vous pouvez également utiliser les bibliothèques clientes Spanner pour accéder à l'API Spanner. Pour en savoir plus, consultez la page Bibliothèques clientes Spanner.
Pilotes et ORM GoogleSQL
Fonctionnalité | database/sql | GORM | Spanner JDBC | Hibernate | Spring Data | R2DBC* | Entity Framework | Active Record | SQLAlchemy | Django | NHibernate |
---|---|---|---|---|---|---|---|---|---|---|---|
Langue | Go | Go | Java | Java | Java | Java | C# | Ruby | Python | Python | C# |
Optimisations d'instruction | † | ||||||||||
Mutations | |||||||||||
LMD par lots | |||||||||||
DDL par lot | |||||||||||
Lectures non actualisées | |||||||||||
Tables entrelacées | |||||||||||
LMD partitionné | |||||||||||
Libellé de session | |||||||||||
Priorité de la requête | |||||||||||
Type JSON | |||||||||||
Ajout de tags à la demande | |||||||||||
Dialecte SQL de Google | |||||||||||
Dialecte PostgreSQL | |||||||||||
Limites | Afficher | Afficher | Afficher | Afficher | Afficher | Afficher | Afficher |
* Cette colonne décrit R2DBC lorsqu'il est utilisé spécifiquement avec Spring Data.
† Disponible uniquement lors de l'envoi de requêtes SQL littérales, à l'aide de l'annotation Spring Data @Query
.
Pilotes et ORM PostgreSQL
Tous les pilotes PostgreSQL nécessitent que le proxy PGAdapter soit en cours d'exécution. Pour en savoir plus, consultez la section À propos de PGAdapter.
Fonctionnalité | Spanner JDBC | PostgreSQL JDBC | Hibernate | pgx | GORM | psycopg2 | psycopg3 | SQLAlchemy 2 | node-postgres |
---|---|---|---|---|---|---|---|---|---|
Langue | Java | Java | Java | Go | Go | Python | Python | Python | Node.js |
Optimisations d'instruction | |||||||||
Mutations | |||||||||
LMD par lots | |||||||||
DDL par lots | |||||||||
Lectures non actualisées | |||||||||
Tables entrelacées | |||||||||
LMD partitionné | |||||||||
Libellé de session | |||||||||
Priorité de la requête | |||||||||
Ajout de tags à la demande | |||||||||
Limites | Afficher | Afficher | Afficher | Afficher | Afficher | Afficher | Afficher | Afficher |