【问题标题】:Database Schema for Multi tenant SaaS Application [closed]多租户 SaaS 应用程序的数据库架构 [关闭]
【发布时间】:2014-01-26 18:44:08
【问题描述】:

我想知道如何为每个租户提供自定义。我想提供一种便利,可以在租户想要的每个表单中添加新字段,包括字段名称、数据类型等。现在我的问题是如何为这种类型的场景设计数据库表?正如我所认为的,我们必须为每个表单提供表单 ID,每当租户在表单中创建新字段时,都应在数据库表中创建一个新行,该行应具有租户 ID、表单 ID、字段名称、数据类型等等……

现在请朋友们给我真正的解决方案....我马上需要这个数据库表设计解决方案...

【问题讨论】:

标签: database database-design multi-tenant saas


【解决方案1】:

使用 SQL,租户可以共享数据库集群、数据库或表。术语各不相同。

当租户共享数据库集群时,每个租户都有一个私有数据库。这是最容易定制的,在租户中具有最强的隔离性,并且最容易在灾难中恢复。

当租户共享一个数据库时,每个租户都会获得一个私有架构。这也很容易定制,租户之间的隔离度有所降低,并且在灾难中仍然相对容易恢复。不过,一个租户的恢复可能会影响所有租户的表现。

当租户共享一个表时,可以说,每个租户都会获得一些私有行。即使是小规模也很难定制,租户之间的隔离更难,单个租户的灾难恢复真的困难。

我认为最好的选择是每个租户一个数据库或每个租户一个架构。但是您应该意识到,期望最终用户成为数据库设计者是有风险的。

【讨论】:

    猜你喜欢
    • 2023-01-28
    • 1970-01-01
    • 2014-07-27
    • 2012-07-24
    • 2021-07-10
    • 2012-05-17
    • 2012-04-10
    • 1970-01-01
    • 2018-08-20
    相关资源
    最近更新 更多