MSSQL数据库的性能是否会随着其中的更多表而下降?即使这些表包含很少甚至没有数据(也许只有100行),但是有数百个表,每天可能增加数千个?
正在使用的MSSQL的特定版本是2008标准版。
这里的逻辑是,每个在网站上注册的用户都会获得自己的一组表,用于存储与所有其他用户分开的数据。这将允许用户帐户在服务器之间移动并完全删除,如果需要留下很少甚至没有痕迹。另外,为用户提供更多的舒适感,因为他们知道他们的数据是完全分段的,因此更难以获得。
另一个问题是用户帐户数据存储在类似于垂直数据库的表中,因为有一个内容数据表,其中只有几个字段,但这些条目可以应用于任何类型的数据,从小帖子,日历条目,私人消息到用户编写的大型多页文章。单个内容平均可以在该表中添加10到15行。因此,在我想象的场景中,为所有用户设置一个大表似乎是非常差的表现。
只能通过为网站制作的API访问数据,该API会提取特定于用户的数据,并验证每次调用的数据访问权限。可以在将来制作任何类型的数据,这就是为什么用户具有内容表以及其他几个用于设置等的原因。每个用户大约有15个表,用于网站的各种管理方面。例如,api允许您以用户z的形式从用户y请求内容块x。它验证您的安全性并从表中提取块x的所有数据字段。
因此,不断增加的大量表格最终会使系统大幅减速吗?或者在单个表中拥有如此大量的数据会导致更大的减速?
答案 0 :(得分:5)
不,不是任何相关的保证金。
但是,你的利益仍然是错误的 - 你失去了很多sql功能,或者必须为交叉用户查询制作大量的联盟。除非他有一个非常特殊的情况,否则我会解雇任何想出这样一个概念的人,你不会有99.99%的机密性。类似的说法就像你今天为Windows开发16位软件一样。简而言之:
不,没有明显的性能下降。
仍然是一个糟糕的设计决定。