我正在开发一个包含大量数据的网站,该网站将存储在SQL Server数据库中。我该如何优化它以使其更快。 1.使用存储过程。 2.功能/视图。 3.任何其他方法
答案 0 :(得分:4)
答案 1 :(得分:4)
数据库调优中最重要的事情是如何使用数据。
索引可以提高数据检索速度。但是,在编写数据时,过度索引会产生巨大的性能瓶颈。 (索引需要在写入数据时进行更新。在最坏的情况下,这可能会使您的写入时间比没有索引时多几倍。)
与观点相同。如果数据在很大程度上是只读的,那么良好的索引视图对于性能和可管理性来说是一件很棒的事情。但是他们可以真正拖延数据库写作。
分区可能很关键。如果您的数据位于具有大量轴的高质量存储介质上,则可以对数据进行分区,以便将引用最多的数据分布在不同的轴上。这样,当多个请求在一个驱动器上排队时,您没有空闲的读取头。
根据您的数据访问需求,它也是设置多个数据库的流行策略,其中只有一个可以写入。其他都是只读副本。这样,您就可以以几乎实时的方式查询和分析数据(如果这是可接受的)并将负载分散到服务器之外。
最后,查询调优非常重要。您可以使用SQL Server附带的工具来帮助调整查询。通常,您甚至不需要索引来显着提高读取性能。您只需要更改查询以避免不必要的列(例如,可能排除现有索引)或不必要的连接,子查询等。
答案 2 :(得分:2)
当然还有其他方法 1)优化表结构(如果可行) 2)最优索引结构(复杂索引,包含字段) 3)分区(如果服务器是几个物理磁盘) 4)SQL数据压缩(仅限企业版)