Azure 弹性数据库池
Azure Elastic Database Pool
我正在设计一个 SaaS 系统,该系统将 运行 在 Azure 中运行并利用 SQL 服务器。该应用程序将利用 Azure 弹性数据库池来支持通过分片进行扩展。计划是 运行 共享分片模型并利用分片映射将租户 ID 映射到正确的数据库。
我一直在阅读 Azure 文档并成功地在我的开发环境中的几个测试数据库中设置了一个弹性数据库池。所以我了解如何实施以及理论上这将如何工作。
我不清楚的是,最好的做法是在自己的 Azure SQL 服务器上创建每个 Azure SQL 数据库(分片),还是仅 运行 一台服务器多个数据库。我正在尝试弄清楚,如果我在一台服务器上有 30 个数据库,而 30 台服务器各有一个数据库,是否存在潜在的性能瓶颈。在任何一种情况下,我都假设这 30 个数据库都是单个弹性池的一部分。
谁能帮我从概念上理解资源是如何分配的?
所有文档都在讨论分配给数据库的资源,但从未提及服务器,所以我假设这有点无关紧要,只是 this 上下文中的一个容器。
这个问题是由我的大部分经验驱动的,这些经验是基于物理 SQL 服务器的世界,其中每台服务器上可以资源的数据库数量是有限的。
发帖后不久,我通过在 Azure 中进行测试回答了我自己的问题。您只能将位于同一数据库服务器上的数据库添加到弹性池中。
我正在设计一个 SaaS 系统,该系统将 运行 在 Azure 中运行并利用 SQL 服务器。该应用程序将利用 Azure 弹性数据库池来支持通过分片进行扩展。计划是 运行 共享分片模型并利用分片映射将租户 ID 映射到正确的数据库。
我一直在阅读 Azure 文档并成功地在我的开发环境中的几个测试数据库中设置了一个弹性数据库池。所以我了解如何实施以及理论上这将如何工作。
我不清楚的是,最好的做法是在自己的 Azure SQL 服务器上创建每个 Azure SQL 数据库(分片),还是仅 运行 一台服务器多个数据库。我正在尝试弄清楚,如果我在一台服务器上有 30 个数据库,而 30 台服务器各有一个数据库,是否存在潜在的性能瓶颈。在任何一种情况下,我都假设这 30 个数据库都是单个弹性池的一部分。
谁能帮我从概念上理解资源是如何分配的? 所有文档都在讨论分配给数据库的资源,但从未提及服务器,所以我假设这有点无关紧要,只是 this 上下文中的一个容器。
这个问题是由我的大部分经验驱动的,这些经验是基于物理 SQL 服务器的世界,其中每台服务器上可以资源的数据库数量是有限的。
发帖后不久,我通过在 Azure 中进行测试回答了我自己的问题。您只能将位于同一数据库服务器上的数据库添加到弹性池中。