使用联合为多个租户分区

时间:2013-02-27 14:19:29

标签: azure azure-sql-database

鉴于以下情况"事实"我从阅读中找到了这些。

  1. 联盟从创建时起就是独立的数据库。
  2. 作为原件的副本,如果我更改原始架构,它们将不会自动更改。
  3. 作为单独的数据库,您无法交叉加入。
  4. 每个联盟都定价为单独的数据库。
  5. 我必须为每个要联合的表提供一个TenantId字段。
  6. 如果这些是正确的,那么使用联合来实现多租户而不仅仅是单独的dbs有什么好处?或者如果不正确,请直截了当地说。

    请注意,我们有少量租户,可能是20个。

1 个答案:

答案 0 :(得分:1)

您的理解是正确的。

您可能会发现联邦的一些有趣方面很有用。首先,它是一个相对灵活的分区环境。例如,您可以根据客户的使用模式将10个租户分组到第一个成员中,将50个租户分组到第一个成员中。或者您可以简单地将使用系统的单个客户与其他客户隔离开来。

另一个重要的概念是每个数据库可以有多个联合。因此,您可以拥有Customer Federation和SalesHistory联合。

最后但并非最不重要的是,您可能希望阅读本文讨论传统分片模型中出现的connection pool fragmentation,但这不是SQL数据库联合的问题。