你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
多租户和 Azure SQL 数据库
Azure 上的多租户解决方案通常使用 Azure SQL 数据库。 本页上介绍了 Azure SQL 数据库的一些功能,这些功能在设计多租户系统时非常有用。 还提供了有关如何在多租户解决方案中使用 Azure SQL 的指南和示例的链接。
指南
Azure SQL 数据库团队发布了有关使用 Azure SQL 数据库实现多租户体系结构的广泛指导。 请参阅具有Azure SQL 数据库的多租户 SaaS 模式。 另请查看 Azure SQL 数据库分区指南。
支持多租户的 Azure SQL 数据库功能
Azure SQL 数据库包含许多支持多租户的功能。
弹性池
弹性池让你可以在同一服务器上的多个数据库之间共享计算资源。 使用弹性池,可实现每个数据库的性能灵活性,同时还可通过跨数据库共享预配资源来实现成本效益。 弹性池提供针对近邻干扰问题的内置保护。
详细信息:
弹性数据库工具
使用分片模式,可跨多个数据库缩放工作负载。 Azure SQL 数据库提供支持分片的工具。 这些工具包括管理分片映射(跟踪分配给每个分片的租户的数据库)。 还包括初始化和跟踪使用弹性作业的多分片上的查询和管理操作。
详细信息:
- 具有弹性数据库工具和行级安全性的多租户应用程序
- Scaling out with Azure SQL Database(使用 Azure SQL 数据库进行扩展)
- 弹性数据库作业
- 弹性作业教程介绍了创建、配置和管理弹性作业的过程。
行级别安全性
使用共享表时,行级别安全性可用于强制实施租户级隔离。
详细信息:
密钥管理
Always Encrypted 功能支持数据库端到端加密。 如果租户要求提供他们自己的加密密钥,请考虑为每个租户部署单独的数据库并启用 Always Encrypted 功能。
详细信息:
作者
本文由 Microsoft 维护, 它最初是由以下贡献者撰写的。
主要作者:
- Paul Burpo | FastTrack for Azure 首席客户工程师
- John Downs | 首席软件工程师
其他参与者:
- Silvano Coriani | Azure SQL 首席项目经理
- Dimitri Furman | Azure SQL 首席项目经理
- Sanjay Mishra | Azure SQL 首席项目经理
- 阿森·弗拉基米尔斯基|首席工程师,FastTrack for Azure
若要查看非公开的 LinkedIn 个人资料,请登录到 LinkedIn。
后续步骤
查看多租户的存储和数据方法。
相关资源
- Azure SQL 数据库的数据分区策略
- 案例研究:在 Azure SQL 上为大型 SaaS 提供商运行 1M 数据库:Microsoft Dynamics 365 和 Power Platform
- 示例:Wingtip Tickets SaaS 应用程序提供同一应用的三个多租户示例;每个示例都会在 Azure SQL 数据库上探索不同的数据库租户模式。 第一个示例使用独立应用程序,并且每个租户都有自己的数据库。 第二个示例使用多租户应用,并且每个租户都有一个数据库。 第三个示例使用多租户应用,并且具有分片式多租户数据库。
- 视频:Azure SQL 数据库上 SaaS 应用程序的多租户设计模式