多租户SaaS应用程序的数据库模式[关闭]

问题描述 投票:-2回答:1

我想知道如何为每个租户提供自定义。我想提供设施,以便在租户想要的每个表单中添加字段名称,数据类型等新字段。现在我的问题是如何为这种情况设计数据库表?我认为我们必须为每个表单提供表单ID,并且每当租户在表单中创建一个新字段时,应该在数据库表中创建一个新行,该行应具有租户ID,表单ID,字段名称,数据类型等等....

现在请给我真正的解决方案的朋友....我需要立即数据库表设计解决方案...

database database-design multi-tenant saas
1个回答
3
投票

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

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

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

当租户共享一张桌子时,每个租户都会得到一些私人行,可以这么说。即使是小规模也很难定制,租户之间的隔离更加困难,单个租户的灾难恢复真的很难。

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

© www.soinside.com 2019 - 2024. All rights reserved.