我们为一家无力支付SQL DBA的小公司工作,也没有咨询。
从一个小项目开始,现在已成为一个包含大量数据的全面系统。
我需要有人帮助我理清性能改进。我意识到没有人能够直接帮助并完全解决这个问题,但我只是想确保我已经覆盖了我的轨道。
好的,问题基本上是我们对缓存数据的查询遇到了超时问题。我用c#代码增加了超时时间,但是当它变得荒谬时我才能走得那么远。
当前设置是一个数据库,每隔5/10秒就会插入一次数据!在此过程中,我们从csv文件中填充表。过夜我们运行数据缓存过程,以减少"插入"表。最初我们能够将超过1000万行转换为400000行,但由于用户需要更多过滤,我们必须包含更多数据行,当然还会将数据缓存表的数量从400000行增加到1-300万行。
在我的SQL开发服务器上(没有每5秒插入一次数据)过去需要30秒才能在数据缓存表上运行500万行查询,现在有索引和一些改进它现在已经17秒。实时服务器具有标准SQL Server,过去需要57秒,现在为40秒。
我们有15个以上的实例运行相同数量的数据库。
到目前为止,我们已经概述了以下改进系统的方法:
最近的改进可能:
正如我所说,我正在寻找粗略的指导方针,并且意识到没有人可以帮助完全解决这个问题。我们是一个小团队,没有人扩展SQL Server体验。客户想要答案,我们已经尝试了我们所知道的一切。顺便提一下,他们在Excel中有一个小规模的版本,并说他们没有发现任何问题,为什么我们呢?!?!?
希望有人可以提供帮助。