2

我对哪种架构数据库方法最好进行了大量研究,最后,我更喜欢单独的数据库方法。但是,大多数托管服务提供商对此并不满意(以 Azure 为例,有 150 DB 的限制)。

我现在的想法是从单个数据库/单个架构开始,在每列中使用租户 ID 来分隔数据,然后当它变得太大/太慢时,寻找扩展选项。

这是一个坏主意吗?我应该从一开始就将数据分开吗?我觉得安全方面并不重要,只要我验证我正在调用/检索的数据属于调用客户。

此外,与拥有 5000 个小型数据库相比,使用单个大型数据库是否会更容易扩展?

谢谢!

4

1 回答 1

0

对于云托管,我认为单个多租户数据库是可行的方法。

前段时间我遇到了同样的问题,并选择了每个租户一个数据库,因为我们的客户希望保留在他们的服务器上托管数据库的选项。由于我们在多台服务器上有一个代码库和许多数据库,因此我们必须推出一个同步解决方案以确保所有模式保持不变。

我们在存储过程中也有一些业务逻辑,并且必须想办法区分具有全局逻辑的过程和具有特定于该数据库的逻辑的过程。

它有效,但很尴尬,我希望我们可以使用单个数据库

无论如何,就像之前所说的每种方式都有优点和缺点,你只需要决定什么对你来说最重要并解决缺点

于 2014-02-13T10:55:28.830 回答