分享
 
 
 

MSSQLServer7.0查询处理器

王朝mssql·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

引言

Microsoft® SQL® Server 7.0 版是 Microsoft 数据库产品的定义版本,它建立在 Microsoft SQL Server 6.5 版所确立的坚实基础之上。用户的需要和要求推动了 SQL Server 7.0 中重大的产品创新。作为 Microsoft Windows® 操作系统系列产品最佳的关系数据库管理系统 (RDBMS),SQL Server 是各个领域的公司用户和独立软件商 (ISV) 的正确选择。

本文对 SQL Server 查询处理器中的创新和改进进行了描述,SQL Server 查询处理器是数据库服务器中接受 SQL 语法,确定如何执行该语法以及执行选择的计划的部分。与其它商业上可用的 RDBMS 产品相比,SQL Server 7.0 是重大创新的源泉。

在简要介绍查询处理器作用、类型及查询处理组件之后,将讨论以下主题:

Microsoft SQL Server 7.0 的目标

查询执行

查询优化

分布式查询

处理查询

有关详细信息,请参见“存储引擎”白皮书(文档编号 098-80769),英文网址为: http://www.microsoft.com/sql/beta 。

关系数据库由许多部分组成,但是在它的核心部分有两个主要组件:“存储引擎”和“查询处理器”。存储引擎将数据写入磁盘,并从磁盘读取数据。它管理记录、控制并发性,并维护日志文件。

查询处理器接受 SQL 语法、确定如何执行该语法,并执行选择的计划。用户或程序与查询处理器交互,而查询处理器与存储引擎交互。注意,查询处理器将用户与执行的详细情况隔离开:用户决定结果,查询处理器确定该结果是如何获得的。

查询处理有两个主要阶段:“查询优化”和“查询执行”。

查询优化是选择执行得最快的计划的过程。在优化阶段,查询处理器选择:

如果有索引的话,使用哪些索引。

执行联接的顺序。

类似 WHERE 子句的约束的应用顺序。

根据从统计数据导出的成本核算信息,采用哪些算法有望达到最佳性能。

查询执行是执行在查询优化过程中所选择的计划的过程。查询执行组件还确定查询优化器可用的技术。例如,SQL Server 既实现哈希联接算法,也实现和合并联接算法,两种都是查询优化器的可用算法。

查询优化器是关系数据库系统的大脑。尽管几乎任何任务都能够手动完成,但是查询处理器使关系数据库能够漂亮而有效地完成工作。

作为一个类比,设想两个建筑公司。两个公司都接到了建筑一所房屋的任务。要建筑的房屋必须达到一定大小,而且必须有一定数量的窗户、一定数量的卧室和盥洗室、一个厨房,等等。第一家公司在开始工作之前先制定计划。他们确定所需步骤的顺序、哪些步骤可以同时进行、哪些步骤取决于其前的步骤,以及哪些工人最适合执行不同的任务。第二家建筑公司没有作计划。他们随便捡起手头儿现有的工具就开始施工了。

除非任务很简单(而建一个房子通常不是简单的事),否则事先作计划的公司更有可能先完成。同样的原因,带有较完善的查询优化器的关系数据库更有可能比带有简单查询优化器的关系数据库以更快的速度完成查询,特别是复杂的查询。

可用工具的类型也决定了一项工作的执行速度,而且在某种意义上讲,决定能够应付什么样的工作。例如,自动倾卸卡车对于建造房屋来说可能是合适的工具,但是对清理花园来说就不合适。与之类似,关系数据库必须不仅只有一个完善的查询优化器,还必须有查询执行的正确的可用工具,而且必须为工作选择正确的工具。

在关系数据库中有两种主要的查询优化器类型:“基于语法的查询优化器”和“基于开销的查询优化器”。

基于语法的查询优化器

基于语法的查询优化器为获得对 SQL 查询的应答结果创建一个过程计划,但是它选择的特定计划取决于查询的确切语法及查询中的子句顺序。无论数据库中记录的数目或组合是否随时间变化而更改,基于语法的查询优化器每次都执行同样的计划。与基于开销的查询优化器不同,它不查看或维护数据库的统计记录。

基于开销的查询优化器

基于开销的查询优化器在备选计划中选择应答 SQL 查询的计划。选择是基于对执行特殊计划的开销估算(I/O 操作数、CPU 秒数,等等)而作出的。它通过记录表或索引中记录的数目和构成的统计数字估算这些开销。与基于语法的查询优化器不同,它不依赖于查询的确切语法或查询中的子句顺序。

SQL Server 6.5 和 SQL Server 7.0 都实现了基于开销的查询优化器。SQL Server 7.0 在查询优化器和查询执行引擎的完善性方面提供了可观的改进。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有