某采购中心采购了一套商品批发查询管理系统,此系统采用SQL Server 2008数据库管理系统,该系统需要经常处理百万级以上的数据查询。同时该系统提供了第三方人员开发的SQL接口,第三方人员可以根据自己的需要开发自己的应用程序来访问数据库中的相关数据。

admin2018-10-09  39

问题 某采购中心采购了一套商品批发查询管理系统,此系统采用SQL Server 2008数据库管理系统,该系统需要经常处理百万级以上的数据查询。同时该系统提供了第三方人员开发的SQL接口,第三方人员可以根据自己的需要开发自己的应用程序来访问数据库中的相关数据。
    (1)系统在使用的过程中,业务人员反应系统操作速度很慢。经过工程师检查测试后,数据库系统本身及网络传输过程中存在着一些问题,请给出针对数据库系统本身及网络传输过程中可能的一些调优方案。
    (2)工程师在完成数据库系统本身和网络问题的优化后,发现第三方开发人员的SQL查询语句存在很多没有优化的问题,请从第三方开发人员角度给出一些优化方案。

选项

答案(1)①把数据、日志、索引放到不同的I/O设备上,增加读取速度,数据量(尺寸)越大,提高I/O越重要。 ②纵向、横向分割表,减少表的尺寸。 ③升级硬件,扩大服务器的内存,Windows 2000和SQL Server 2000能支持4~8G的内存。配置虚拟内存,虚拟内存大小应基于计算机上并发运行的服务进行配置。增加服务器CPU个数。 ④分布式分区视图可用于实现数据库服务器联合体。联合体是一组分开管理的服务器,但它们相互协作分担系统的处理负荷。这种通过分区数据形成数据库服务器联合体的

解析 从数据库本身和网络传输的角度出发,数据库性能低下的因素一般有:I/O吞吐量小,形成了瓶颈效应;没有创建计算列导致查询不优化;SQL Server数据库内存不足;网络速度慢;查询出的数据量过大(可以采用多次查询或其他的方法降低数据量)以及锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)。
    从SQL查询语句角度来考虑优化响应时间,应该从查询条件、临时表、游标、返回数据量、大事务操作等方面进行调优。
转载请注明原文地址:https://kaotiyun.com/show/DWlZ777K
0

最新回复(0)