某采购中心采购了一套商品批发查询管理系统,此系统采用SQLServer 2008数据库管理系统,该系统需要
某采购中心采购了一套商品批发查询管理系统,此系统采用SQLServer 2008数据库管理系统,该系统需要经常处理百万级以上的数据查询。同时该系统提供了第三方人员开发的SQL接口,第三方人员可以根据自己的需要开发自己的应用程序来访问数据库中的相关数据。(10分)(1)系统在使用的过程中,业务人员反应系统操作速度很慢。经过工程师检查测试后,数据库系统本身及网络传输过程中存在着一些问题,请给出针对数据库系统本身及网络传输过程中可能的一些调优方案。(2)工程师在完成数据库系统本身和网络问题的优化后,发现第三方开发人员的SQL查询语句存在很多没有优化的问题,请从第三方开发人员角度给出一些优化方案。
【解题思路】从数据库本身和网络传输的角度出发,数据库性能低下的因素一般有:I/O吞吐量小,形成了瓶颈效应;没有创建计算列导致查询不优化;SQL Server数据库内存不足;网络速度慢;查询出的数据量过大(可以采用多次查询或其他的方法降低数据量)以及锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)。从SQL查询语句角度来考虑优化响应时间,应该从查询条件、临时表、游标、返回数据量、大事务操作等方面进行调优。【参考答案】(1)①把数据、日志、索引放到不同的I/O设备上,增加读取速度,数据量(尺寸)越大,提高I/O越重要。②纵向、横向分割表,减少表的尺寸。③升级硬件,扩大服务器的内存,Windows 2000和SQL Server 2000能支持4-8G的内存。配置虚拟内存,虚拟内存大小应基于计算机上并发运行的服务进行配置。增加服务器CPU个数。④分布式分区视图可用于实现数据库服务器联合体。联合体是一组分开管理的服务器,但它们相互协作分担系统的处理负荷。这种通过分区数据形成数据库服务器联合体的机制能够扩大一组服务器,以支持大型的多层Web站点的处理需要。⑤重建索引:DBCC REINDEX,DBCC INDEXDEFRAG;收缩数据和日志:DBCC SHRINKDB,DBCCSHRINKFILE。设置自动收缩日志,对于大的数据库不要设置数据库自动增长,它会降低服务器的性能。⑥优化锁结构。(2)①对查询进行优化,尽量避免全表扫描,首先应考虑在where及order by涉及的列上建立索引。②应尽量避免在where子句中使用!=或< >操作符,否则引擎将放弃使用索引而进行全表扫描。③任何地方都不要使用select*from进行全表扫描,用具体的字段列代替“*”,不要返回冗余字段。④避免频繁创建和删除临时表,以减少系统表资源的消耗。⑤尽量避免使用游标,因为游标的效率较差,如果游标操作的数据超过1万行,那么就应该考虑改写。⑥尽量避免大事务操作,提高系统并发能力。
已知关于x的方程x的平方+px+q=0的两个实数根为p,q.求p,q的值将p,q分别代入x²+px 数学 2020-05-16 …
已知p^2-p-1=0,1-q-q^2=0,且pq不等于1.则pq+1/q1-q-q^2=0因为q 数学 2020-06-07 …
西方经济学一道计算题求解设在短期内,垄断竞争厂商的需求函数为:P=20-0.8Q总成本函数为:TC 数学 2020-06-12 …
若某种产品在市场上的供给量Q]与价格p之间的关系为P-3Q-5=0,需求量数量Q与价格P之间的关系 数学 2020-06-14 …
某音乐会面对需求为p=75-0.005q(q为观众p为票价),固定成本150000元,边际成本0元 数学 2020-06-18 …
若完成某分项工程需要某种材料的净用量0.95t,损耗率为5%,那么,必需消耗量为.若完成某分项工程 数学 2020-06-30 …
某厂生产甲产品,固定成本2000元,每生产1吨的成本为60元,市场对该产品的需求规律为:q=100 数学 2020-07-13 …
数列{an}中,an>0,且{anan+1}是公比为q(q>0)的等比数列,满足anan+1+an 数学 2020-07-30 …
数列{an}中,an>0,且{anan+1}是公比为q(q>0)的等比数列,满足anan+1+an 数学 2020-07-30 …
某商场2013年一月份到十二月份月销售额呈现先下降后上升的趋势,现有三种函数模型:①f(x)=p• 数学 2020-08-04 …