假设我们有一个庞大的客户群,每个客户都可以拥有大量的数据。在 SQL Server 中,处理此问题的最佳方法是什么?
是否会为所有记录提供一个新字段来识别客户?
为每个客户创建一个新数据库?
其他选择?
谢谢你的帮助
假设我们有一个庞大的客户群,每个客户都可以拥有大量的数据。在 SQL Server 中,处理此问题的最佳方法是什么?
是否会为所有记录提供一个新字段来识别客户?
为每个客户创建一个新数据库?
其他选择?
谢谢你的帮助
阅读多租户数据架构。您的选择是:
我强烈建议阅读这篇文章以获取每一个的详细信息,因为要考虑的变量太多了,所以这篇文章最终不会推荐一个或另一个,因为你必须根据你的具体情况选择一个基础。
由于它是在 2006 年编写的,因此它不考虑Azure 联合,这是一种特殊的Shared Database, Shared Schema
方法,但具有由联合机制提供的内置横向扩展。
此外,在 stackoverflow 和 dba.stackexchange 上搜索“多租户 sql server”将揭示大量先前的讨论。
您可以使用partitiondb。他们为您的案例提供最佳解决方案。
看看他们的saas 例子。如您所见,每个客户都有一个 gatedb 和多个 db。它就像数据库的面向对象概念。他们还支持不同服务器上的数据库。