【问题标题】:Will a separate database multi tenant application work on Azure?单独的数据库多租户应用程序能否在 Azure 上运行?
【发布时间】:2013-10-12 23:11:16
【问题描述】:

我了解到 Azure 有 150GB 的数据库限制,以及拥有 149 个独立数据库的限制。如果我理解正确,如果我的应用程序使用单独的数据库设置,其中我有 1000 多个不同的数据库,Azure 将不是一个好的选择。

我是对的还是我误解了 Azure 的限制?

【问题讨论】:

    标签: azure cloud azure-sql-database multi-tenant


    【解决方案1】:

    Azure 的 SQL 数据库是数据库即服务。您分配的每台服务器都有您提到的单个数据库限制,您可以创建多个服务器,每个服务器都有自己的数据库。因此,如果您将负载分散到多台服务器上,您确实可以超过 149 个数据库。或者...您可以在应用中管理租户,将多个租户存储在一个逻辑数据库中。

    如果您需要更细粒度的控制并想自己管理数据库,您始终可以在虚拟机(或多个 Vms,在始终在线配置中)中运行 SQL Server。此时,您可以按照自己的意愿配置服务器,并拥有高达 16TB 的附加存储(通过 16 个 1TB 挂载磁盘,全部由持久 blob 存储支持)。

    在虚拟机库中,您将看到安装了 SQL Server 的预构建 VM。部署后,您将负责维护 VM(相对于 SQL 即服务,它会为您完成所有维护工作)。

    【讨论】:

    • MySQL 数据库的限制是否不同?除此之外,在达到 150 db 之后部署一个新的 SQL 实例可能是个问题,而且很快就会变得昂贵。我的租户数据库非常小(所有表中组合了 500-5000 条记录)。机架空间托管不是更好的选择吗?
    • 我忽略了你关于 Rackspace 的问题;这是无关的和征求意见的。对于较小的数据库,Azure SQL DB 起价为每月 5 美元,最高 100MB,每月 10 美元,最高 1GB。如果这太贵了,那么将租户合并到一个数据库中(因为定价是按比例缩放的,而不是线性的,对于较大的数据库来说成本更低)。或者只是部署您自己的服务器。 Azure 不提供 MySQL - ClearDB 通过 Azure Store 提供。你需要检查他们的定价。如果您在 VM 中托管 MySQL,则限制和成本与 SQL Server 相同。
    • Ah ok thx :) 我询问了 rackspace,因为我认为他们对 DB 有不同的限制/设置
    • 我做的一件事是将租户合并到一个数据库中。所以我可能在每个数据库中有 100 个数据库,每个服务器限制为 150 个数据库,我最多可以有 15,000 个用户(此时我退休)。
    • 在数据库中组合多个租户的一种方法是使用模式分离:geekswithblogs.net/hroggero/archive/2011/10/05/…。这个项目提供了一个 Compress Shard 的完整示例,您可能需要考虑:enzosqlshard.codeplex.com
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-23
    相关资源
    最近更新 更多