典型的应用使用客户端(例如低级驱动程序或对象关系映射器 [ORM])连接到数据库。Spanner 支持多种语言的客户端,让您可以在各种开发者环境中使用常用库(例如 JDBC)。如需了解详情,请参阅驱动程序概览。
除了管理应用如何连接到 Spanner 之外,您还必须管理要发送哪些查询以及这些查询使用的语法。Spanner 支持两种 SQL 方言,两者均基于 ANSI SQL 标准。您可以根据要运行的生态系统,选择为 Spanner 使用 GoogleSQL 或 PostgreSQL 接口。如需了解详情,请参阅为 Spanner 数据库选择合适的方言。 由于 Spanner 数据库与源数据库之间的架构差异,Spanner 中使用的语法可能与源数据库的语法不一致。
若要将应用迁移到 Spanner,请手动完成以下步骤:
Spanner 不支持在数据库中运行用户代码,因此您需要将存储在数据库级别的所有过程和触发器移至应用中。
使用 Spanner 客户端库和 ORM。如需了解详情,请参阅 API、客户端库和 ORM 驱动程序概览。
请注意 Spanner 分区 DML、只读事务、提交时间戳和读取时间戳,以及它们如何优化应用性能。
您可能还需要更改交易处理方式。请考虑以下事项:
- 每次提交包含的变更限制为 80,000 个。表上的每个二级索引都是每行额外的变更。如需使用变更修改数据,请参阅使用变更插入、更新和删除数据。如需修改大量数据,请使用分区 DML。