Server作为一款面向企业级应用的关系数据库产品

上传人:枫** 文档编号:548190323 上传时间:2024-02-28 格式:DOC 页数:20 大小:1.12MB
返回 下载 相关 举报
Server作为一款面向企业级应用的关系数据库产品_第1页
第1页 / 共20页
Server作为一款面向企业级应用的关系数据库产品_第2页
第2页 / 共20页
Server作为一款面向企业级应用的关系数据库产品_第3页
第3页 / 共20页
Server作为一款面向企业级应用的关系数据库产品_第4页
第4页 / 共20页
Server作为一款面向企业级应用的关系数据库产品_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《Server作为一款面向企业级应用的关系数据库产品》由会员分享,可在线阅读,更多相关《Server作为一款面向企业级应用的关系数据库产品(20页珍藏版)》请在金锄头文库上搜索。

1、第1章 SQL Server 2008概述SQL Server作为一款面向企业级应用的关系数据库产品,在各行业和各软件产品中得到了广泛的应用,尤其是SQL Server 2008的发布使得SQL Server无论在效率上还是功能上较SQL Server 2000都得到了很大的改善和提高。本章将主要讲解SQL Server 2008的基础知识与其安装和使用方法。1.1 SQL Server 2008简介本节将主要介绍SQL Server的发展历史和特点,通过对数据库发展历史和SQL Server发展历史的了解,使读者更好地确定学习的目标。1.1.1 SQL Server发展历史1946年世界上第

2、一台计算机“ENIAC”的诞生标志着人类进入了计算机时代。使用计算机中所必须面临的一个问题就是资料的存储。早期的计算机是将信息通过打孔的方式存储在纸带上,但是这种存储在纸带上的信息既不容易检索也不容易修改。后来随着磁存储介质的发明,信息才以文本文件或二进制文件的形式存储。这种以单独的文件来存放信息就叫做文件处理系统(file-processing system)。不同的信息被存放到不同的文件和不同的路径下,人们编写不同的应用程序来记录和处理需要的文件。文件处理系统的主要缺点有:q 无数据格式标准。由于文件和程序是在比较长的一段时间由不同的程序员编写的,而文件中并没有统一的格式来标注文件中的信息

3、内容,容易造成对数据的理解不一致。比如一个学生管理系统,a文件中记录了a学生选修的5门课程的成绩,b文件记录的是b学生选修的7门课程的成绩。由于a和b选修的课程不同造成文件中的记录含义不同。由于没有统一的格式标准,大量的这种文件放在一起必然造成程序处理的困难。q 数据冗余。采用文件存储的方式,由于缺乏唯一性检查容易造成一样的信息在几个文件中重复存储。这种存储不但使得文件访问的开销增大,还会导致数据的不一致。q 数据检索困难。由于文件系统中没有索引,若要检索出文件内容中的某行数据,程序就必须打开所有文件,找出其中符合条件的数据。还以前面提到的学生管理系统为例,若要找出英语分数最高的同学,程序必须

4、打开每一个学生成绩的文件找到其中的英语成绩才能最终找到结果。对于几万或是几十万个文件,若要遍历每一个文件,其处理效率可想而知。传统的文件处理系统不支持以一种方便而高效的方式去获取所需数据。而随着计算机的普与,需要处理的数据不断膨胀,在面对几百万条、几千万条的情况下,文件处理系统已经无能为力。而且随着处理业务的不断复杂化,数据完整性问题、原子性问题、并发操作问题、数据安全问题等更使文件处理系统捉襟见肘。在这种情况下数据库管理系统(database management system,DBMS)应运而生。早期的数据库还是以数据存储和数据检索为主,使用网状数据模型和层次数据模型来描述数据、数据联系、

5、数据定义和数据一致性约束。1970年,美国IBM(主要产品DB2)公司的E.F.Codd发表的著名论文A Relational Model of Data for Large Shared Data Banks中首先提出了关系数据模型。后来Codd又提出了关系代数和关系演算的概念、函数依赖的概念、关系的三X式,为关系数据库系统奠定了理论基础。接着各大数据库厂商都推出了支持关系模型的数据库管理系统,标志着关系数据库系统新时代的来临。随着关系数据库系统时代的到来,各大数据库厂商都开始推出自己的关系数据库产品。1989年Sybase和Ashton-Tate公司(以其dBase软件成为当时数据库市场的

6、霸主,1991年被Borland并购)合作开发了数据库产品SQL Server 1.0。而Microsoft为了能在关系数据库市场和甲骨文公司(主要产品Oracle)以与IBM相抗衡,其在1992年劝说Sybase公司进行5年的合作,共同研发数据库产品。并在之后推出了应用于Windows NT 3.1平台上的Microsoft SQL Server 4.21版本,从此标志着Microsoft SQL Server的正式诞生。20世纪90年代,数据库市场百花齐放,竞争十分激烈。SQL Server的早期版本由于其自身的不足,仅局限在小型企业和个人应用上。直到1998年SQL Server 7.0

7、的推出才使SQL Server走向了企业级应用的道路。而随后发布的SQL Server 2000更是一款优秀的数据库产品,凭借其优秀的数据处理能力和简单易用的操作使得SQL Server跻身世界三大数据库之列(另外两个是Oracle和IBM DB2)。如表1.1给出了SQL Server各版本的发布时间和开发代号。表1.1 SQL Server各版本发布时间和开发代号年代版本开发代号1993年SQL Server for Windows NT 4.21无1994年SQL Server for Windows NT 4.21a无1995年SQL Server 6.0SQL 951996年SQL

8、Server 6.5Hydra1998年SQL Server 7.0Sphinx2000年SQL Server 2000Shiloh2003年SQL Server 2000 Enterprise 64位版Liberty2005年SQL Server 2005Yukon2008年SQL Server 2008Katmai虽然微软凭借着SQL Server 2000成为世界数据库三巨头之一,但是与Oracle和IBM的DB2相比,SQL Server 2000在数据处理效率、系统功能和市场占有率上仍有比较大的差距。到2004年,据IDC统计,Oracle的市场占有率为41.3%,而IBM和微软的市

9、场份额则分别为30.6%和13.4%。自从2000年微软发布SQL Server 2000以后,5年来一直没有对SQL Server进行大的版本升级。2005年SQL Server 2005的发布可谓是微软在数据库市场投放的重磅炸弹,SQL Server 2005不愧为微软“十年磨一剑”的精品之作。其高效的数据处理、强大的功能、简易而统一的界面操作,以与诱人的价格立即受到众多软件厂商和企业的青睐。SQL Server的市场占有率不断增大,微软和Oracle、IBM又站在了同一起跑线上。3年后,SQL Server 2008在原有SQL Server 2005的架构上做了进一步的更改。除了继承S

10、QL Server 2005的优点以外,还提供了更多的新特性、新功能,使得SQL Server上升到新的高度。1.1.2 SQL Server 2008的特点SQL Server自从6.0版脱离Sybase架构后,每一个重大版本的发布都引入了新的特性和功能。q SQL Server 7.0使用了全新的关系引擎和查询引擎设计,并率先在数据库管理系统中引入OLAP和ETL。这标志着SQL Server进入商务智能(BI)领域。q SQL Server 2000使得总体性能提高了47%,同时增加了其扩展性和对XML的支持。另外SQL Server 2000还率先引入了通知服务、数据挖掘、报表服务等。

11、q SQL Server 2005在性能上较SQL Server 2000有了更进一步的提高。在企业级数据管理平台方面的高可用性设计和全新的安全设计也特别引人注目。在商务智能数据分析平台上,SQL Server 2005增强了OLAP分析引擎、企业级的ETL和数据挖掘能力。同时其还实现了与Office集成的报表工具。另外在数据应用开发平台上,SQL Server 2005实现了与.NET的集成、Web Service集成、Native XML支持以与Service Broker等。q SQL Server 2008除了在SQL Server 2005的基础上优化查询性能外,还提供了新的数据类型

12、、支持地理空间数据库、增加T-SQL语法、改进了ETL和数据挖掘方面的能力。当然,作为微软在数据库市场的主打产品SQL Server 2005的升级版,SQL Server 2008的特性不仅仅如此。微软官方给出了SQL Server 2008的关键功能列表,以供读者 参考。总体来说,SQL Server正朝着更高的性能,更可靠更安全的方向发展,并提供商务智能的集成,成为了集数据管理和分析于一体的企业级数据平台。1.2 SQL Server 2008架构简介本节主要介绍SQL Server 2008的系统架构、数据存储方式、读写方式以与SQL程序的运行方式。读者只有对系统架构有了一个基本的认识

13、,才能对更好地学习和理解SQL Server 2008的相关知识。1.2.1 SQL Server 2008系统架构SQL Server 2008功能模块众多,但是从总体来说可以将其分成两大模块:数据库模块和商务智能模块。数据库模块除了数据库引擎以外,还包括以数据库引擎为核心的Service Broker、复制、全文搜索等功能组件。而商务智能模块由集成服务(Integration Services)、分析服务(Analysis Services)和报表服务(Reporting Services)3大组件组成。各组件之间的关系如图1.1所示。图1.1 SQL Server 2008组件之间的关系

14、从图中可以看出,数据库引擎是整个SQL Server 2008的核心所在,其他所有组件都与其有着密不可分的联系。由于数据库引擎的重要性,笔者在此就主要讲解一下数据库引擎的内部架构。如图1.2显示了SQL Server 2008的总体结构。SQL Server数据库引擎有4大组件:协议(Protocol)、关系引擎(Relational Engine,查询处理器,即Query pilation和Execution Engine)、存储引擎(Storage Engine)和SQLOS。任何客户端提交的SQL命令都要和这4个组件进行交互。图1.2 SQL Server 2008架构协议层接受客户端发

15、送的请求并将其转换为关系引擎能够识别的形式。同时它也能将查询结果、状态信息和错误信息等从关系引擎中获取出来,然后将这些结果转换为客户端能够理解的形式返回给客户端。关系引擎负责处理协议层传来的SQL命令,对SQL命令进行解析、编译和优化。如果关系引擎检测到SQL命令需要数据就会向存储引擎发送数据请求命令。存储引擎在收到关系引擎的数据请求命令后负责数据的访问,包括事务、锁、文件和缓存的管理。SQLOS层则被认为是数据库内部的操作系统,它负责缓冲池和内存管理、线程管理、死锁检测、同步单元和计划调度等。1.2.2 SQL Server 2008的协议当客户端向SQL Server发送SQL命令时,客户

16、端发出的命令必须符合一定的通信格式规X才能被数据库系统识别,而这个规X就是TDS(Tabular Data Stream)。服务器和客户端上都有Net-Libraries,它可以将TDS信息包转换为标准的通信协议包。SQL Server可以同时支持来自不同客户端的多种标准协议,其支持的协议有:q 共享内存(Shared Memory)。这是SQL Server默认开启的一个协议。该协议简单,无须配置。顾名思义,共享内存协议就是通过客户端和服务端共享内存的方式来进行通信。所以使用该协议的客户端必须和服务端在同一台机器上。由于共享内存协议简单,协议效率高而且安全,所以如果客户端(比如IIS)和数据库是在同一台机器上,那么使用共享内存协议是一个不错的选择。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号