构建可缩放的云数据库

适用于:Azure SQL 数据库

使用 Azure SQL 数据库的可缩放工具和功能,可以轻松扩大数据库。 特别是,可以使用 弹性数据库客户端库 来创建和管理扩大的数据库。 通过此功能,可使用 Azure SQL 数据库中上百甚至上千个数据库轻松开发分片应用程序。

若要下载:

文档

  1. 弹性数据库工具入门
  2. 弹性数据库功能
  3. 分片映射管理
  4. 迁移要横向扩展的现有数据库
  5. 数据依赖型路由
  6. 多分片查询
  7. 使用弹性数据库工具添加分片
  8. 升级客户端库应用
  9. 弹性查询概述
  10. 弹性数据库工具术语表
  11. 弹性数据库客户端库与实体框架
  12. 弹性数据库客户端库与 Dapper
  13. 拆分/合并工具
  14. 分片映射管理器的性能计数器
  15. 弹性数据库工具常见问题解答

客户端功能

无论对于开发人员还是管理员,使用 分片 扩大应用程序都存在挑战。 客户端库通过提供工具让开发人员和管理员管理扩大的数据库,简化了管理任务。 在典型的示例中,有许多称为“分片”的数据库要管理。 客户归置于同一数据库,并且每个客户一个数据库(单租户方案)。 客户端库包含下列功能:

  • 分片映射管理:创建一个称为“分片映射管理器”的特殊数据库。 分片映射管理是一种使应用程序能够管理其分片相关元数据的功能。 开发人员可使用此功能将数据库注册为分片(描述各个分片键或键范围到这些数据库的映射),并随着数据库的数量和组成发展来维护此元数据,以反映容量更改。 如果不使用弹性数据库客户端库,则在实现分片时你需要花费大量时间来编写管理代码。 有关详细信息,请参阅分片映射管理

  • 依赖于数据的路由:假设将一个请求传入应用程序。 基于请求的分片键值,应用程序必须根据该键值判断正确的数据库。 接着,它会与数据库建立连接来处理请求。 借助依赖于数据的路由,能够通过对应用程序的分片映射的单个简单调用打开连接。 基础结构代码的另一方面是依赖于数据的路由,弹性数据库客户端库中的功能现已取代了它。 有关详细信息,请参阅数据依赖型路由

  • 多分片查询 (MSQ) :当一个请求涉及多个(或所有)分片时,多分片查询将生效。 多分片查询在所有分片或一组分片上执行相同的 T-SQL 代码。 使用 UNION ALL 语义,将参与分片中的结果合并到一个总结果集中。 通过客户端库公开的功能处理多个任务,其中包括:连接管理、线程管理、故障处理和中间结果处理。 MSQ 最多可以查询数百个分片。 有关详细信息,请参阅多分片查询

一般而言,当使用弹性数据库工具的客户提交具有其自己的语义的局部分片操作(与跨分片操作相对)时,预期可获取完整的 T-SQL 功能。

后续步骤

尚未使用弹性数据库工具? 请查看入门指南