更好的解决scheme是单个数据库或多个数据库,每个客户一个

我build立了一个将有很多用户的软件(希望),我将有用户没有太多的logging或超过正常的数据,我也将有大量的用户,将在许多表中有数百万的数据行。 将每个用户放在一个单独的数据库中,或者为所有用户提供一个主数据库,哪怕数据在logging中可能会变得非常大,最好如何呢? 我担心性能,SQL服务器仍然能够正常执行,即使在每个用户的数百万logging后? 数据的结构将是相同的,因为它们将全部与相同的软件交谈。

有任何想法吗? 谢谢。

您确实需要find一位能够更仔细地评估您的特定需求并提出明智build议的优秀DBA。 也就是说,我担心在不必担心缩小比例之前就开始工作,把所有这些放在一个数据库中就可以开始。

有先进的技术来分割数据,所以它不是在同一台服务器上,没有妥协的数据结构的单一数据库视图。 再次,得到一个好的DBA来提出build议,他们会知道这个东西。

咨询DBA听起来是必须的。

如果现在用户很less,但希望扩展到很多,那么为每个用户创build单独的数据库并没有什么意义。 无论您在单个数据库中获得的性能如何,都几乎可以肯定会被缩放的开销所抵消。 注:SQL服务器实例中的最大数据库数为32,767

一个好的数据库pipe理员应该能够帮助您在一个数据库中正常化表格,从而解决您的性能问题。

如果每个用户有很多表格和数据,恕我直言,一个单独的数据库将是首选的解决scheme。

您也可以从一个数据库实例开始,当特定用户的数据增长超过平均水平时,将其从主数据库中分离出来,并让他们在单独的实例上工作。

另外,如果数据是私有的,安全性是一个主要问题,那么单独的实例会将数据泄露的选项限制在错误的用户身上。