【发布时间】:2023-04-09 17:07:02
【问题描述】:
我们的数据库非常复杂,其中包含许多包含数十亿数据的表,我们将重新设计此数据库以提高数据库性能。
我们将删除一些表并将这些数据与现有表合并,并在现有相关表中添加 6-7 个新列。这对我们提高性能有帮助吗??
【问题讨论】:
-
没有足够的信息来回答这个问题。什么是 6-7 列,为什么您认为添加它们会有所帮助?正在合并/删除的数据是什么?当前的性能问题是什么?什么是索引策略?哪些查询表现不佳?基本上,您问的问题比“这有助于我们提高性能吗?”要复杂得多。问题
-
我们有一个 SP,我们调用了大约 20 多个表,当我们执行查询时大约需要 30 秒。为了克服以上 20 多个表中的这个问题,我们将通过在当前表中添加额外的列来减少大约 8-10 个表。在一个表中,我们有大约 10 列,通过向相关表添加 3-4 个额外的列,我们可以删除平均 2-4 个表。通过删除这些表并向相关表添加额外的列,我们将获得更高的性能??
-
这仍然取决于很多事情。主要是索引策略,还有当前查询 - 即它是否是一个连接等。坦率地说,你最好的选择是在你的测试环境中尝试它,看看它是如何表现的
-
如果你必须在这里问这样的问题,那么答案是“NO”,无论你想做什么都会非常非常可能 NOT 有你想要的结果。如果您有“具有许多包含数十亿数据的表的复杂数据库”,那么您需要找到知道自己在做什么的人。这个主题至少和你的数据库一样复杂,公共论坛上的三句话问题不会产生你需要的深度方向和洞察力。付钱找个好人。
标签: .net sql sql-server sql-server-2008 sql-server-2012