1

我正在对类似 Salesforce 的应用程序(具有多个 10.000 客户的敏感数据的 web 应用程序,每个客户可以有多个 USER帐户)的最佳数据库设置进行一些研究。

我的想法是,拆分数据库设置(每个客户使用不同的数据库)是最好的,因为它是确保数据在安全性方面真正隔离的唯一方法,而且因为它不仅是多客户,而且每个客户都可以拥有登录以处理数据的多个用户。但是...拥有一个具有 10.000 个“小型”数据库的数据库实例真的可以工作吗?

我对共享模式设置并没有太多感觉,因为你最终会得到成千上万个表,这似乎不太容易管理。

仅在每个表中使用一个 customerID 列的 1 个大型数据库设置似乎最容易实现,但并不是很安全……而且我认为连接表将是一项艰巨的任务。

你对这种情况有什么看法?从可扩展性和安全性的角度来看,单独的数据库方案对我来说似乎是最好的......但我知道什么:D

谢谢!

4

1 回答 1

0

恕我直言,您可以选择为每个租户或一组租户使用不同的数据库。这将提供更好的可扩展性、良好的数据访问速度、安全合规性等。如果您必须备份租户数据,它会更快并且可以自动化。一个考虑因素是从共享数据库和共享数据库访问数据。

甚至每个租户都可以选择拥有一个单独的数据库来维护用户信息,以便基本租户身份验证将来自共享数据库,并且可以使用单独的数据库对用户进行身份验证。请分享您对此的看法。

于 2013-09-09T16:23:50.857 回答