首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
设某超市经营管理系统使用SQL Server 2008数据库管理系统,上线运行一年后,用户反映速度缓慢。经技术人员分析,发现速度缓慢的原因为销售单据表和销售单据明细表数据量巨大,当进行这两个表相关查询时就会造成SQL语句执行缓慢。已知这两个表结构如下:
设某超市经营管理系统使用SQL Server 2008数据库管理系统,上线运行一年后,用户反映速度缓慢。经技术人员分析,发现速度缓慢的原因为销售单据表和销售单据明细表数据量巨大,当进行这两个表相关查询时就会造成SQL语句执行缓慢。已知这两个表结构如下:
admin
2016-04-27
134
问题
设某超市经营管理系统使用SQL Server 2008数据库管理系统,上线运行一年后,用户反映速度缓慢。经技术人员分析,发现速度缓慢的原因为销售单据表和销售单据明细表数据量巨大,当进行这两个表相关查询时就会造成SQL语句执行缓慢。已知这两个表结构如下:
销售单据表(销售单据编号,付款总金额,销售时间,销售人员编号,收银台编号),销售单据明细表(销售单据编号,销售时间,商品编号,单价,数量,总价)
从业务上看,程序经常会查询1个月内和最近6个月内销售相关数据。为了保证系统稳定运行,两位工程师分别给出了两种优化方案:
甲工程师:按照销售时间将两张表分别拆分为每月一张表,在系统进行查询时按照给定条件到相关的表中直接查询,降低查询涉及到的数据。
乙工程师:使用SQL Server 2008的分区功能,将两张表变为分区表,按照销售时间每年一个分区,降低查询涉及到的数据。
请从程序修改的难易程度、查询1个月内数据的执行速度、查询最近6个月内数据的执行速度3个方面比较甲乙工程师方案。
根据上述分析结果,请基于甲乙工程师的方案给出最合理的优化方案并说明理由。
选项
答案
(1)修改难易程度:表分割对于所有的数据库都适用,而表分区只能用于特定的数据库;表分区属于数据库物理设计,表分割属于逻辑设计。从实现方式来看,甲工程师易于实现。 查询1个月内的数据执行速度:甲工程师速度快,乙工程师慢。 查询6个月内的数据执行速度:乙工程师快,甲工程师慢。 (2)采用乙工程师的优化方案,即对表分区进行处理。因为分区表的特点是:如果数据量大,而且数据是分段的,而且对不同段的数据使用的操作不同,则适于使用分区表。本题中对表中当前月的数据,经常进行的操作是添加、修改、删除和查询,而对于以往的数据,则几乎不需要操作,或者操作仅限于查询,那么就可以按月份对表进行分区,从而提高系统的执行效率。
解析
当数据表的数据过于庞大,或表中的数据具有使用独立性,有时为了提高性能,可对表进行分割,这虽然破坏了数据表的整体性,但却使系统得到优化。表分割分为水平分割和垂直分割。水平分割是根据数据行的使用特点进行分割,分割之后得到的所有表的结构都相同,而存储的数据不同。当表中分别记录各个地区的数据或不同时期的数据的情况下可对表进行水平分割。水平分割会给应用增加复杂度,特别在查询所有数据时需要Union(并)操作。在许多数据库应用中,这种复杂性会超过它带来的优点,因此,只有当表中的数据具有很好的使用独立性,即大部分情况是局部使用,只有很少情况才全局查询时,适合此方法。
分区表是将表中的数据按水平方式划分成不同的子集,这些数据子集存储在数据库的一个或多个文件组中。是否创建分区表主要取决于表当前的数据量大小以及将来的数据量大小,同时还取决于对表中数据进行的操作特点。通常,如果某个大型表同时满足下列条件,则比较适于进行分区:(1)该表包含(或将包含)以多种不同方式使用的大量数据;(2)数据是分段的,比如数据以年份分隔。
然而,数据量大并不是创建分区表的唯一条件,如果表中大量的数据都是经常使用的数据,而且他们的操作方式基本是一样的,则最好不要使用分区表。
如果数据量大,而且数据是分段的,而且对不同段的数据使用的操作不同,则适于使用分区表。例如,对某表中当前年的数据,经常进行的操作是添加、修改、删除和查询,而对于往年的数据,则几乎不需要操作,或者操作仅限于查询,那么就可以按年份对表进行分区。也就是说,当对数据的操作只涉及一部分数据而不是所有数据时,就可以考虑建立分区表。
分区表是从物理上将一个大表分成几个小表,但从逻辑上来看还是一个大表。对于用户而言,所面对的依然是一个大表,它们不需要考虑操作的是哪个年份对应的小表,用户只要将记录插入到大表(逻辑表)中就可以了,数据库管理系统会自动将数据放置到对应的物理小表中。同样,对于查询而言,用户也只需设置好查询条件就可以了,数据库管理系统会自动到相应的表中查询满足条件的记录。
转载请注明原文地址:https://kaotiyun.com/show/t6lZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
完成科学地组织和存储数据并对数据进行高效地获取和维护的系统软件是
在数据库中,产生数据不一致的根本原因是
数据库中,数据的物理独立性是指
下列问题基于以下的叙述:关系模式R(B,C,M,T,A,C),根据语义有如下函数依赖集:F=(B→C,(M,T)→B,(M,C)→T,(M,A)→(A,B)→G]。关系模式R的码是
若关系R和S的关系代数操作的结果如下,这是执行了若关系R和S的关系代数操作的结果如下,这是执行了
下列问题的关系代数操作基于如下的关系R和S:
下面列出的条目中,哪些是数据库技术的主要特点?Ⅰ.数据的结构化Ⅱ.数据的冗余度小Ⅲ.较高的数据独立性Ⅳ.程序的标准化
在数据库管理系统中,下面哪个模块不是数据库存取的功能模块?
随机试题
引起柏油样便最常见的疾病是
引起继发性腹膜炎的最常见疾病是
甲利用到外国旅游的机会,为了自用,从不法分子手中购买了手枪1支、子弹60发,然后经过伪装将其邮寄回国内后来甲得知乙欲抢银行,想得到一支枪,就与乙协商,以5000元将其手枪出租给乙使用乙使用该手枪抢劫某银行,随后被抓获对甲的行为的正确处理是()
[2007年,第73题]工字形截面梁在图5.11-2示荷载作用下,截面m-m上的正应力分布为()。
背景资料:承包商与业主签订了某小型水库加固工程施工承包合同,合同总价为1200万元。合同约定,开工前业主向承包商支付10%的工程预付款;工程进度款按月支付,同时按工程进度款5%的比例预留保留金;当工程进度款累计超过合同总价的40%时,从超过部分的工程进
按照在银团贷款中的职能和分工,银团贷款成员通常分为牵头行、代理行和参加行等角色。()
甲公司自行建造某项生产用大型设备,该设备由A、B、C、D四个部件组成。建造过程中发生外购设备和材料成本7320万元,人工成本1200万元,可资本化的借款费用1920万元,安装费用1140万元,为达到正常运转发生测试费600万元,外聘专业人员服务费360万元
要深入推进政务公开制度,完善各类公开办事制度和行政复议制度,创造条件让人民批评政府、监督政府,同时充分发挥新闻舆论的监督作用,让权力在阳光下运行。这样做的意义在于()。①有利于政府坚持依法行政,做好各项工作②有利于提高行政效率,
配制一种农药,其中甲、乙、丙三种成分的质量之比为1:2:14.要配制这种农药3825千克,需乙种原料多少?
阅读以下说明,根据要求回答问题。[说明]在WindowsServer2003中可以采用筛选器来保护DNS通信。某网络拓扑结构如图1-15所示,WWW服务器的域名是WWW.abc.edu,DNS服务器上安装WindowsServer2
最新回复
(
0
)