数据库技术的发展与展望.docx

上传人:b****8 文档编号:13085642 上传时间:2023-06-10 格式:DOCX 页数:13 大小:26.82KB
下载 相关 举报
数据库技术的发展与展望.docx_第1页
第1页 / 共13页
数据库技术的发展与展望.docx_第2页
第2页 / 共13页
数据库技术的发展与展望.docx_第3页
第3页 / 共13页
数据库技术的发展与展望.docx_第4页
第4页 / 共13页
数据库技术的发展与展望.docx_第5页
第5页 / 共13页
数据库技术的发展与展望.docx_第6页
第6页 / 共13页
数据库技术的发展与展望.docx_第7页
第7页 / 共13页
数据库技术的发展与展望.docx_第8页
第8页 / 共13页
数据库技术的发展与展望.docx_第9页
第9页 / 共13页
数据库技术的发展与展望.docx_第10页
第10页 / 共13页
数据库技术的发展与展望.docx_第11页
第11页 / 共13页
数据库技术的发展与展望.docx_第12页
第12页 / 共13页
数据库技术的发展与展望.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数据库技术的发展与展望.docx

《数据库技术的发展与展望.docx》由会员分享,可在线阅读,更多相关《数据库技术的发展与展望.docx(13页珍藏版)》请在冰点文库上搜索。

数据库技术的发展与展望.docx

数据库技术的发展与展望

数据库技术的发展与展望

1.数据库技术的发展历程

数据库技术最初产生于20世纪60年代中期,先后经历了第一代的网状、层次数据库系统:

第二代的关系数据库系统:

第三代的以而向对象模型为主要特征的数据库系统。

第一代数据库的代表:

1969年IBM公司研制的层次模型的数据库管理系统IMS和70年代美国数据库系统语言协商C0DASYL下属数据库任务组DBTG提议的网状模型。

层次数据库的数据模型是有根的定向有序树,网状模型对应的是有向图。

第二代数据库的主要特征是支持关系数据模型。

这一理论是在20世纪70年代由时任IBM研究员的E.F.Codd博士提出的。

第三代数据库产生于80年代,不同领域的数据库应用提出了更多新的数据管理的需求,关系型数据库已经不能完全满足需求,于是数据库技术的研究和发展进入了新时代。

其主要特点是:

在保持和继承了第二代关系数据库技术的同时,将而向对象的思想、方法和技术引入数据库。

在而向对象技术和数据库技术相结合的过程中,基本上是沿着两种途径发展的:

一种实现途径是建立纯粹的而向对象数据库管理系统,这种途径往往是以一种而向对象语言为基础,增加数据库的功能,主要是支持持久对象和实现数据共享。

而向对象的数据库不仅在处理多媒体等数据类型时可以做到游刃有余,而且在应用系统开发速度和维护等方而有着极大的优越性。

但是,这种纯粹的而向对象数据库系统并不支持SQL语言,在通用性方面失去了优势,因而英应用领域受到了很大的局限。

第二种实现途径是从传统的关系数据库加以扩展,增加而向对象的特性,把而向对象技术与关系数据库相结合,建立对象关系数据库管理系统。

这种系统既支持已经被广泛使用的SQL,具有良好的通用性,又具有而向对象特性,支持复杂对象和复杂对象的复杂行为,是对彖技术和传统关系数据库技术的最佳融合。

2.数据库技术的发展趋势

应用驱动和技术驱动相结合。

而对Internet,未来数据库的发展将遵循四个方向:

大、小、广、易。

一方而,随着深度及普及化的发展趋势,数据库分别朝大型与小型化发展。

超大规模数据的出现需要高性能、复杂的并行数据库系统,此外,随着移动讣算与普颯化讣算的发展,低端的精小型系统是解决个性数据处理和存储的主要工具,它将嵌入到各种移动设备中去,装进广大的用户口袋中,进入寻常百姓家。

另一方而,随着Internet的发展,数据库技术的应用空间将不断地扩展,即未来数据库将向W亡b这样一个广阔的空间发展。

与此同时,数据库技术还将向着实时性更强。

更加智能化的方向发展,对其融入自然语言甚至肢体语言的接口,让人们应用数据库变得更加容易。

从技术驱动的角度看,数据库技术应呈现出具有髙可靠性、髙性能、髙可伸缩性和高安全性的特点。

这是由于数据库是各行业信息系统的核心和基础,苴可靠性和性能是人们非常关心的问题。

事实上,数据库系统的稳圧和高效也是技术上长久不衰的追求。

此外,从齐行业信息系统发展的角度上看,一个系统的可扩展能力也是非常重要的。

由于信息量、业务量的扩大,原来的系统规模和能力已经不再适应新的要求的时候,不是重新更换更高档次的机器,而是在原有的基础上增加新的设备,如处理器、存储器等,从而达到分散负载的目的。

数据的安全性是另一个重要的课题,普通的基于授权的机制已经不能满足许多应用的要求,新的基于角色的授权机制以及一些安全功能要素,如存储隐通道分析、标记、加密、推理控制等,在一些应用中成为切切实实的需要。

主流数据库介绍

1.Oracle数据库

ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(Client/Server)或者B/S体系结构的数据库之一。

ORACLE数据库是目前世界上使用最为广泛的数据库管理系统。

作为一个通用的数据库系统,它具有完整的数据管理功能;作为一个关系数据库,它是一个完备关系的产品;作为分布式数据库它实现了分布式处理功能。

ORACLE是以高级结构化查询语言(SQL)为基础的大型关系数据库,可以支持多种不同的碾件和操作系统平台,从台式机到大型和超级计算机,为各种硬件结构提供髙度的可伸缩性,支持对称多处理器、群集多处理器、大规模处理器等,并提供广泛的国际语言支持。

ORACLE在国际市场中的地位可见是处于绝对的领先地位。

到现在第十一版ORACLE11G(G代表Grid网格),加入了网格计算的功能。

ORACLE9io(tT代表Internet,这一版中添加了大量为支持Internet而设计的特性,同时为数据库用户提供了全方位的Java支持。

2.DB2

DB2是IBM公司研制的一种关系型数据库系统。

DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于OS/2、Windows等平台下,对大型分布式应用系统尤为适用。

3.Teradata企业级数据仓库

Teradata企业数据仓库将公司的所有数据集中为单一的信息库,为您提供完全综合性的全方位业务情况,即公司业务的真实反映。

可以轻松挖掘、共享,更重要的是,在公司内部使用来自公司各层面的信息一一客户服务、销售、市场、财务、Web点选流向资料、合作伙伴和供应商数据等等。

员工,包括那些与客户近距离接触的员工,都可以对公司有充分的了解,从而帮助他们进行更好的决策、采取更适当的行动并最终提高公司营收。

4.Sybase

美国Sybase公司研制的一种关系型数据库系统,是一种典型的UNIX或WindowsNT平台上客户机/服务器环境下的大型数据库系统,

Sybase主要有三种版本:

一是UNIX操作系统下运行的版本;二是NovellNetware环境下运行的版本;三是WindowsNT环境下运行的版本。

对UNIX操作系统目前广泛应用的为Sybase10及Sybase11forSCOUNIX.

Sybase通常与SybaseSQLAnywher亡用于客户机/服务器环境,前者作为服务器数据库,后若为客户机数据库,采用该公司研制的PowerBuilder为开发工具,在我国大中型系统中具有广泛的应用。

5.Informix数据库

美国InformixSoftware公司研制的关系型数据库管理系统。

Informix—Se版本:

适用于UNIX和WindowsNT平台,为中小规模的应用而设计<

Informix、

Informix-online版本:

在UNIX操作系统下运行,可以提供多线程服务器,支持对称多处理器,适用于大型应用。

6.MySQL数据库管理系统

MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQLAB公司开发、发布并支持的。

“MySQL”的正式发音是“MyEssQueEll”(而不是“mysequel")

7.PostgreSQL数据库

PostgreSQL对象一关系型数据库管理(有一段时间被称为Postgres95)。

经过十几年的发展,PostgreSQL是世界上可以获得的最先进的开放源码的数据库系统,它提供了多版本并行控制,支持所几乎所有SQL构件(包括子査询,事务和用户泄义类型和函数),并且可以获得非常广阔范用的(开发)语言绑立(包括C,C++,Java,perl,tc1和python)0它的版本从95年PostgreO.01之后更新到现在的Postgre8.1版本了。

8.Ingres数据库

Ingres是比较早的数据库系统,开始于加利福尼亚大学柏克莱分校的一个研究项目。

Ingres数据库不仅能管理数据,而且还能管理知识和对象。

Ingres智能关系性数据库管理系统「

9.MaxDB数据库

MaxDB是一种大型高效的企业数据库,数据库管理通过了SAP认证,可用于OLTP和OLAP,它具有高的可靠性、可用性和可伸缩性,以及相当完善的特性集。

MaxDB和MySQL数据库管理系统是由MySQLAB公司提供的独立产品。

10・DM达梦数据库管理系统

国产数据库的重要代表之一。

DH是达梦数据库有限公司自主开发的关系数据库管理系统,DM基于成熟的关系数据模型和国际标准接口,是一个大型通用的、跨平台、高效稳左的数拯库管理系统,特别在安全方面已经达到B1级。

与继承开源的产品不同,DH具有完全自主品牌。

技术的沉淀,经验的积累为DH的持续发展提供了有力的保障。

同时,DM可根据用户的特殊需求左制扩展,为用户提供全方位深层次的本地化技术服务。

11.Kingbase人大金仓

是国产数据库的代表。

金仓数据库管理系统KingbaseEnterpriseServer(简称KingbaseES)是北京人大金仓信息技术有限公司开发的通用关系数据库管理系统。

KingbaseES基于成熟的关系数拯模型,是一个跨越多种软硬平台、具有大型数据管理能力、髙效稳泄的数据库管理系统。

KingbaseSE是国家"十五”863数据库重大专项的产品化成果,英核心技术源于中国人民大学数据与知识工程研究所承担的国家863髙科技讣划项目并行数据库管理系统PBASE.该项目曾获得北京市科技进步二等奖和国家教疗部科技进步二等奖。

12.神舟OSCAR数据库

国产数据库的主要代表之一。

神舟OSCAR数据库,是拥有完全自产品牌的企业级大型、通用对象关系数据库管理系统。

它是北京神舟航天软件技术有限公司集多年的数据库研发经验,在科技部重大软件专项“大型通用数据库管理系统及苴应用”和航天科技集团的大力支持下研制成功的,也是目前科技部经费支持力度最大的国产数据库产品。

神舟OSCAR数据库系统性能稳左、功能完善,可广泛应用于各类企事业单位、政府机关,尤其是国防、航天、航空等事关国家政治、军事、经济安全的务要害单位的信息化建设。

神舟OSCAR数据库系统基于Client/Server架构实现,服务器具有通常数据库管理系统的一切常见功能,此外还包括一些有助于提髙系统对工程数据支持的特别功能,而客户端则在提供了各种通用的应用开发接口的基础上,还具有丰富的连接、操作和配宜服务器湍的能力。

13.nBASE

国产数据库。

OpenBASE是东软集团有限公司软件产品事业部推出的我国第一个自主品牌的商品化数拯库管理系统,该产品由东软集团有限公司软件产品事业部研发并持有版权。

10多年来,OpenBASE已渐形成了以大型通用关系型数据库管理系统为基础的产品系列,包括:

OpenBASE多媒体数拯库管理系统,OpenBASEWEB应用服务器、OpenBASEMini嵌入式数据库系统、OpenBASESecure女全数据库系统等。

14・SQLServer2000

美国Microsoft公司推出的一种关系型数据库系统。

SQLServer是一个可扩展的、高性能的、为分布式客户机/服务器讣算所设计的数据库管理系统,实现了与WindowsNT的有机结合,提供了基于事务的企业级信息管理系统方案。

15.FoxPro数据库

最初由美国Fox公司1988年推出,1992年Fox公司被Microsoft公司收购后,相继推出了FoxPro2.5、2.6和VisualFoxPro等版本。

16.Access数据库

美国Microsoft公司于1994年推岀的微机数据库管理系统。

它具有界而友好、易学易用、开发简单、接口灵活等特点,是典型的新一代桌面数据库管理系统.

流行数据库系统的选择

如果你打算做一个DBA,建议你选择那些现在比较流行的数据库系统。

这意味着你将有更多的就业机会、交流和培训机会,而且,流行自有流行的理由,你可以因此省心很多。

当然,就业竞争压力也比较大。

1.最"容易"的数据库系统-MicrosoftSQLServer

—般的入门者选择MicrosoftSQLServer,这是非常适合中小型企业的数据库系统,熟悉Access的读者很容易就能初步使用MicrosoftSQLServer,成为一个DBBS。

2.最"难"的数据库-无冕之王Oracle

如果你有机会接触到Oracle,那可是个好机会。

Oracle是目前最看好的数据库厂商,由于英强大的功能和可配巻、可管理能力,OracleDBA的嶄资一般比苴他数据库管理员的崭资要髙。

而且.Oracle在大中型企业的关键应用也更加普遍了。

Oracle可以运行在WindowsNT、SunSolaris、Linux等平台下。

很多情况卜-要求你不仅仅熟悉NT,还要你熟悉Unix:

而且Oracle不太友善的界而和成箱的Oracle产品资料可能也是一个障碍。

3.数据库系统的贵族-IBMDB2

作为30年数据库研究的成果,IBMDB2确实称得上"数据库系统的贵族"。

不管是小型商业系统,还是大的银行系统,用DB2都是可以髙枕无忧的。

最近推出的新版DB26.1,管理和调节工具更加卓越和便于使用。

DB2可以运行在Intel架构上,也可以运行在IBM的S/390大型计算机上。

如果你所在的行业对IBH的机器特別地称道,建议你学AIIBMDB2。

4.以Java为中心的数据库-SybaseAdaptiveServerEnterprise(ASE)12.0

即将发布的SybaseASE12.0,直接而向Java程序员。

这种以Java为中心的数据库系统,为那些准备在Java平台下构建企业应用的企业来说,将是最好的选择。

但是ASE称不上一个数据库领域的领先者。

5.值得期盼的InformixCentaur

有时候"第一"只是意味着你的对手需要等待更长的时间去赶上你。

这正是1997年创立的Informix所而临的。

Informix公司是率先将多媒体特性加入到关系数据库系统的大型数据库厂商之一。

但是如今,IBM、Oracle.Sybase都已经跨越了这个概念。

所以,Informix不得不寻求新的支撑来使自己区別于英他数据库厂商。

这就是InformixCentaur的目标。

InformixCentaur结合了InformixDynamicServer7.3的对象-关系数据库和InformixUniversalDataOption9.1,意在获得更好的适应性和多媒体支持。

详情如何,我们拭目以待!

6.DBA的薪资

有很多因素影响到你作为DBA的崭资:

你的经验和能力所决左的DBA等级:

你所熟悉的数据库系统:

你的个性特点和潜力

下而的表说明了国内DBA人员的基本嶄资状况,并说明了DAB等级和你所熟悉的数据库系统怎样影响到DBA的薪资。

当然,这只是我个人掌握的情况,只能在一立程度上代表行业的平均水平。

DBA等级数据库系统初级DBA年嶄(万中级DBA年嶄(万髙级DBA年薪(万

Oracle

4

8

11

MicrosoftSQL

Server

3

5

8

IBMDB2

4

8

10

Sybase

3.5

6

8

Informix

4

7

10

元)

元)

元)

注:

每年按13个月计算。

表内数字为平均年薪。

几种数据库开发工具的介绍

1.VB

全称VisualBasic,在中国乃至全世界都曾看到过它的身影,它曾是在中国最为流行的编程工具,到现在还占据着非常重要的地位,对于它的好坏大家都有一立的了解。

由于VB不具备跨平台这个特性,从而也决泄了VB在未来的软件开发中将会逐渐地退出苴历史舞台:

它对组件技术的支持是基于COM和ActiveX,对于组件技术不断完善发展的今天,它也显出了它的落后性;同时VB在进行系统底层开发的时候也是相对复杂的,凋用API函数需声明,凋用不方便,不能进行DDK编程,不可能深入RingO编程,不能嵌套汇编:

而且而向对象的特性差:

网络功能和数据库功能也没有非常特出的表现,综上所述,VB作为一种可视化的开发工具由于其本身的局限性,导致了它在未来软件开发中逐步被苴他工具所代替。

2.PB

全称PowerBuilder,是开发MIS系统和各类数据痒跨平台的首选,使用简单,容易学习,容易掌握,在代码执行效率上也有相当出色的表现。

PB是一种真正的4GL语言(第四代语言),可随意直接嵌套SQL语句返回值被賦值到语句的变量中,支持语句级游标,存储过程和数据库函数,是一种类似SQLJ的规范,数据访问中具有无可比拟的灵活性。

但是它在系统底层开发中犯了跟VB—样的错误,调用API函数需声明,调用不方便,不能进行DDK编程,不可能深入RingO编程,不能恢套汇编:

在网络开发中提供了较多动态生成Web页而的用户对象和服务以及系统对象,非常适合编写服务端动态Web应用,有利于商业逻借的封装:

但是用于网络通讯的支持不足:

静态页而农制支持有限,使得PB在网络方面的应用也不能非常广泛。

而向对象特向也不是太好。

3.C++Builder/Delphi

它们都是基于VCL库的可视化开发工具,它们在组件技术的支持、数据库支持、系统底层开发支持、网络开发支持、而向对象特性等各方而都有相当不错的表现,并且学习使用较为容易,充分提现了所见即所得的可视化开发方法,开发效率高。

由于两者都是Borland公司的产品,自然继承了该公司一贯以来的优良传统:

代码执行效率高。

但是,它们并不是毫无缺点,它们所作的最大不足之处就是他们的帮助系统在众多的编程工具中是属于比较差的。

C++Builder的VCL库是基于Objectpascal(面向对象pascal),使得C++Builder在程序的调试执行上都而向落后于其他编程工具。

而Delphi则是它的语言不够广泛,开发系统软件功能不足两个比较大的缺点。

4.VisualC++

是基于MFC库的可视化的开发工具,从总体上说它是一个功能强大但是不便使用的一种工具。

它在网络开发和多媒体开发都具有不俗的表现,帮助系统也做得非常不错(Microsoft在细节方而的处理往往都让人觉得亲切),但是虽然是使用C++作为基本语•言,但是它在而向对象特性上却不够好,主要是为了兼容C的程序,结果顾此失彼:

在组件支持上也不太好,虽然说除了支持COM,ActiveX外还支持CORBA,但是没有任何IDE支持,是所有C编译器的功能,需要C0RBA中间件支持;最大的问题是开发效率也不高。

5.Java编程工具

目前比较出名的是Borland岀的JBuilder和IBM出的VisualAgeforJava,两种工具都有一左数量的是用人群。

JBuilder继承了C++Builder/Delphi的特点,在可视化上做得非常不错,使用简便。

由于Java本身语言的特点使得他们在网络开发中具有高人一等的表现,而且面向对象特性高,支持的组件技术也非常多,跨平台的特性也使得它在现在和未来的开发中占据越来越重要的地位。

但是在系统底层开发和多媒体开发中却表现得并不让人那么满意,这个可能跟设计Java的意图有关吧。

♦Oracle的学习

Oracle的体系太庞大了,对于初学者来说,难免会有些无从下手的感觉,什么都想学,结果什么都学不好,所以把学习经验共享一下,希望让刚刚入门的人对Oracle有一个总体的认识,少走一些弯路。

1.定位

Oracle分两大块,一块是开发,一块是管理。

开发主要是写写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。

有点类似于程序员,需要有较强的逻辑思维和创造能力,比较辛苦;管理则需要对Oracle数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会down掉整个数据库,相对前若来说,后者更看重经验。

2.学习方法

看书、思考、写笔记、做实验、再思考、再写笔记。

3.Oracle体系结构前必须掌握的两个概念

Oracle的体系很庞大,对于初学者来讲,在了解Oracle体系结构之前必须掌握以下两个基本的概念:

数据库和实例。

数据库:

无论数据库是采用关系结构还是而向对象结构,oracle数据库都将其数据存放在数据文件中.在其内部,数拯库结构对数据文件的逻辑映射,使不同的数据分开存储,这些逻借划分称为表空间.

(1)物理结构(由控制文件、数据文件、重做日志文件、参数文件、归档文件、密码文件组成)

控制文件:

包含维护和验证数据库完整性的必要信息、例如,控制文件用于识别数据文件和重做日志文件,一个数据库至少需要一个控制文件.

数据文件:

存储数据的文件.

重做日志文件:

含对数据库所做的更改记录,这样万一岀现故障可以启用数据恢复。

一个数据库至少需要两个重做日志文件.

参数文件:

泄义Oracle例程的特性,例如它包含调整SGA中一些内存结构大小的参数.

归档文件:

是重做日志文件的脱机副本,这些副本可能对于从介质失败中进行恢复很必要。

密码文件:

认证哪些用户有权限启动和关闭Oracle例程.

(2)逻辑结构(表空间、段、区、块)

表空间:

是数据库中的基本逻辑结构,一系列数据文件的集合。

段:

是对象在数据库中占用的空间.

区:

是为数据一次性预留的一个较大的存储空间.

块:

ORACLE最基本的存储单位,在建立数据库的时候指立.

实例

通俗的讲实例就是操作oracle数据库的一种手段.

数据库实例也称作服务器,是用来访问数据库文件集的存储结构及后台进程的集合.

一个数据库可以被多个实例访问(称为真正的应用群集选项).

决泄实例的大小及组成的各种参数或者存储在爼称init.ora的初始化文件中,或者隐藏在数据库内部的服务器参数文件中.通过spfile引用该文件,spfile存储在spfile.ora文件中.

实例启动时读取初始化文件,数据库系统管理员可以修改该文件,对初始化文件的修改只有在下次启动时才有效。

Instance分为两部分:

(1)内存分配(SGA和PGA)

SGA:

是用于存储数据库信息的内存区,该信息为数据库进程所共享。

它包含Oracle服务器的数拯和控制信息,它是在Oracle服务器所驻留的汁算机的实际内存中得以分配,如果实际内存不够再往虚拟内存中写。

PGA:

包含单个服务器进程或单个后台进程的数据和控制信息,与几个进程共享的SGA.正相反PGA是只被一个进程使用的区域,PGA在创建进程时分配在终止进程时回收.

(2)后台进程(数据写进程、日志写进程、系统监控、进程监控、检查点进程、归档进程、服务进程、用户进程)

数据写进程:

负责将更改的数据从数据库缓冲区髙速缓存写入数据文件

日志写进程:

将重做日志缓冲区中的更改写入在线重做日志文件

系统监控:

检查数据库的一致性如有必要还会在数据库打开时启动数拯库的恢复进程监控:

负责在一个Oracle进程失败时淸理资源

检査点进程:

负责在每当缓冲区髙速缓存中的更改永久地记录在数据库中时,更新控制文件和数据文件中的数据库状态信息。

归档进程:

在每次日志切换时把已满的日志组进行备份或归档

服务进程:

用户进程服务。

用户进程:

在客户端,负责将用户的SQL语句传递给服务进程,并从服务器段拿回查询数据。

Oracle例程:

Oracle例程由SGA内存结构和用于管理数据库的后台进程组成。

例程一次只能打开和使用一个数据库。

6、SCN(SystemChangeNumber):

系统改变号,一个由系统内部维护的序列号。

当系统需要更新的时候自动增加,他是系统中维持数拯的一致性和顺序恢复的重要标志。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2