主流关系数据库管理系统、工具及新技术
一,主流关系数据库管理系统
1、主要的关系数据库产品:前流行的数据库管理系统绝大多数是关系型数据库管理系统,一般可
分为如下3类:
(1)以PC机、微型机系统为运行环境的数据库管理系统。
(2)以Oracle为代表的数据库管理系统,这类系统还有IBM DB2,Sybase,Microsoft SQI. Server等,也被称为主流数据库管理系统。
2、新应用需求对关系DBMS的挑战:
高可靠和高安全,多媒体、大容量、复杂数据应用,可伸缩协同服务,高性能管理大系统能力,支
持互联能力,联机事务处理和决策、联机分析处理能力。
3、关系DBMS发展趋势:智能化、集成化,支持互联网应用,产品系列化,支持扩展关系,保证安
全性。
4、SQL Server 2000
体系结构:支持客户机/服务器体系结构
(1)三部分组成:客户机端组件、服务器端组件和通信服务组件。
(2)客户机端组件:企业管理器、查询分析器、数据传输服务DTS、客户端网络实用工具、联机
丛书。
(3)服务端组件:SQL服务器服务、SQL服务器代理、分布式事务协调服务、服务器网络使用工具
通信组件:
(4)、SQL Server2000功能特点:1)充分的Web支持 2)高度可伸缩和可靠性 3)完善的数据
库功能
4)数据仓库功能 5)易于使用和管理 6)网络无关性
(5)、SQL数据库组成:系统数据库(Master(基本配置信息)、Model(用户数据库模版)、
Tempdb(临时表)、Msdb(调度和历史作业)和用户数据库。
(6)SQL Server2000中常用数据库对象:表、数据类型、约束、规则、视图、索引、默认值、
触发器、存储过程和用户自定义函数。
SQL Server 2000多版本支持
SQL Server 2000提供了各种不同的版本,包括SQL Server 2000企业版、SQL Server 2000标
准版、SQLServer 2000个人版、SQL Server 2000开发人员版,SQL Server 2000企业评估
版,SQL Server 2000桌面引擎和SQL Server 2000 Windows CE版。
(7)从Internet访问SQL Server2000数据库:1)Windows2000和IIS作为Internet平台 2)用
ISAPI(Internet Server API函数调用集)访问SQL Server 3)ASP(Active Server Pages
服务端脚本)访问SQL Server 4)XML(可扩展标记语言,交换数据和文件的标准)访问SQL
Server
5、Oracle数据库系统
(1)目前比较新的版本为 Oracle 11g,Oracle最初被设计为关系数据库管理系统,自版本8起,Oracle定位成一个对象-关系数据库管理系统。
(2)Oracle体系结构
Oracle服务器由Oracle数据库(Oracle Database)和Oracle实例(Oracle Instantce)组
成。Oracle数据库是存储数据的集合,包括日志文件和控制文件。Oracle实例包括系统进程和该
数据库的所有用户进程。
(3)Oracle数据库结构
Oracle数据库的逻辑结构由数据库定义构成,涉及模式对象和多个表空间。
Oracle的表空间、段和盘区用于描述Oracle物理存储结构的术语。
1)数据库、表空间和数据文件的关系
表空间是逻辑存储单元,有如下特性:
每个Oracle数据库由被分成一个或多个表空间,分为一个SYSTEM表空间和至少一个用户表空间。
每个表空间包括一个或多个数据文件,是一对多的关系。
一个Oracle数据库总存储容量是该数据库所有表空间的存储容量之和。
Oracle数据库的物理存储按数据块、盘区和段来组织。Oracle使用以下四种类型段:数据段、索
引段、临时段和回滚段。
(5)Oracle实例
Oracle实例:由系统全局区(SGA)、用户进程和Oracle进程(分为服务器进程和后台进程)组
成。
(6) Oracle数据库服务器包括标准服务器和许多可选的服务器选件。标准服务器主要具有下列特
色:多进程多线索的体系结构、高性能核心技术、高可用性和SQL的实现。
(7)Oracle的系统开发工具及其功能:
1)Developer/2000:包括Oracle Forms(快速基于屏幕的应用), Oracle Reports(快速生
成报表),Oracle Graphics(快速生成图形)和Oracle Books(生成联机文档)
2)Designer/2000:CASE工具,BPR、Modellers、Generators等组成。
3)Discoverer/2000:OLAP工具,主要用于支持数据仓库应用。
4)Oracle Office和InterOffice,办公自动化。
(8)Oracle的连接产品及功能:SQL*NET和NET8,客户机与服务器的网络通信产品。Oracle网
关、Oracle数据装载器。
(9)Oracle数据仓库解决方案:服务端Oracle Express Server和客户端Oracle Express
Objects和Oracle Express Analyzer等
(10)Oracle的Internet解决方案:产品Oracle WebServer,由Oracle WebListener、
Oracle WebAgent和Oracle 服务器三部分组成。
(11)Oracle的对象-关系特性(新增加的内容)
Oracle的核心是关系型数据库,面向对象功能通过对关系功能扩充实现
引入抽象数据类型、对象视图、可变数组(表示多值属性)、嵌套表和大对象(BLOB(二进制大对
象)、CLOB(字符型大对象)、BFILE(存储在数据库外的只读二进制数据文件,数据库中只存储
它的目录名)和NCLOB(固定宽度多字节CLOB)及它们的复合使用来实现对象-关系型数据库。
(新增内容)
(12)SQL Server和Oracle的安全性共性
1)权限和授权
Oracle权限分为数据库系统权限和数据库对象权限,SQL Server权限分为服务器权限和数据库权
限,服务器权限只能授予DBA,数据库权限分为数据库语句权限和数据库对象权限。数据库语句权
限对应Oracle数据库系统权限,数据库对象权限对应Oracle数据库对象权限。
2)、角色(数据库系统角色和用户定义角色)3、用户标识和身份认证(系统登录、数据库连接和
数据库对象访问):MS SQL Server两种验证模式:Windows模式和混合模式。
4)、自主访问控制(用访问控制矩阵模型实现)
5)、审计(固定和选择两种方式,Oracle的三种审计类型:登录审计、操作审计和对象审计)
6)、视图、存储过程和触发器
二,新一代数据库系统工具
1、数据库系统工具分类:数据库管理工具(加载工具、备份工具、文件重组工具和性能监控工具
等)和数据库系统设计和开发工具(CASE工具、应用开发工具、通讯接口)。
4GL语言具有“面向问题”,“非过程化程度高”等特点,如PowerBuilder、Delphi、Visual Basic等。
浏览器/服务器开发面向Internet应用系统,主要工具有:ASP,JSP,PHP等。Web Service解决
异构平台互操作。
2、新一代数据库系统工具的特征:支持与多种数据库连接、支持独立于特定的DBMS开发、支持可
视化图形用户界面、支持面向对象的程序设计、拥有完善的数据对象、支持开放性、功能完备和集
成化。
3、应用开发工其的发展趋势:采用3层客户/服务器结构、支持Web应用、开放的、构件式的分布
式计算环境。
4、当前开发工具存在的问题:
(1)开发过程过于复杂,涉及过多低层技术实现。
(2)难于满足要求稳定的大规模的企业级业务处理。
(3)难于快速适应低层技术的更新和业务逻辑变化。
5、基于浏览器/服务器结构软件开发模式
(1)信息系统的层次结构划分:分为表现层(界面)、应用逻辑层(应用处理逻辑)、数据逻辑
层(数据存取),关键是应用逻辑层。
(2)浏览器/服务器模式可归纳为三种结构:以Web服务器为中心、以应用服务器为中心(主流软
件结构)、以数据库服务器为中心。
Web服务器为中心的结构是早期Web数据库应用开发最主要方式。应用逻辑在Web服务器扩展程序中
(CGI,Web API接口),CGI公共网关接口,独立进程在服务器运行,Web API动态加载到服务器
进程执行,效率高
与传统客户机/服务器比较,有如下缺点:1)、用户界面受HTML语言限制 2)、Web服务器负载过
重
3)、HTTP协议效率低。
以应用服务器为中心的软件结构把web技术与三层客户机/服务器有机结合,是目前信息系统采用
的主流软件结构。
该软件结构可分为四部分:客户机、Web服务器、应用服务器、数据库服务器
6、CASE工具
(1) PowerDesigner的6个模块介绍如下:
I)PowerDesigner ProcessAnalyst。用于数据分析或数据发现,(产生数据字典、数据流程图
等)
2)PowerDesigner DataArchitect。概念层和物理层数据库设计和数据库构造。可生成多种数据库管理系统的数据库。
3)PowerDesigner AppModeler。物理建模和应用对象和敏感组件生成。
4)PowerDesigner MetaWorks。通过模型共享支持高级团队开发。
5)PowerDesigner WarehouseArchitect。数据仓库和数据集市的建模和实现
6)PowerDesigner Viewer。只读、图形化方式访问整个企业模型信息
(2) Delphi支持数据库开发四种技术:BDE、ADO、dbExpress、InterBase技术。
(3) PowerBuilder:
PowerBuilder10.0提供对J2EE和Microsoft .NET环境支持, 具有数据窗口(Data Window)”对
象专利。为使用.NET开发工具的用户提供了一套DataWindow.NET,为简化应用开发设计,缩短了
开发时间,降低对复杂数据处理及对SQL知识的要求。
(4)Microsoft .NET 开发工具:版本:Visual studio .NET 2003(支持. NET 1.1)、
Visual studio .NET 2005(支持.NET2.0)、Visual studio .NET 2008(支持.NET3.5)
.NET的通用语言框架机制:CLR(Common Language Runtime):在同一项目中支持不同语言开
发的组件。
Visual studio .NET 2008新增功能:
1、多定向技术:同一项目绑定多个.NET Framework版本
Visual studio .NET 2008是第一个允许开发人员针对多个.NET Framework版本开发的Visual
Studio版本
2、HTML/CSS编辑器 实现Dreamwaver网页编辑功能
3、AJAX和Javascript支持
4、ADO.NET改进(LINQ用来进行数据访问的编程模型。提供对象到关系的映射)
5、Silverlight和XAML(跨平台、跨浏览器的.NET插件,建造丰富的媒体体验和RIA应用)。
6、拼写检查器:加入FXCop拼写检查器
7、数据库发布向导
三,数据库技术的发展
1、数据库技术的发展阶段
(1)第一代数据库系统是指层次模型数据库系统(基于树形结构)和网状模型数据库系统(基于有
向图结构)
(2)第二代数据库系统指支持关系模型的关系数据库系统(最先由E.F.Codd提出关系模型)。
(3) 面向对象的技术与数据库技术相结合便产生了第三代数据库系统。
2、数据库系统体系结构
(1)集中式数据库系统:数据库的全部功能在一台计算机上运行,不与其他计算机交互。
(2)并行数据库系统:并行操作时,许多操作是同时执行的,通过并行地使用多个CPU来提高处
理速度。
所有的处理器共享一个公共的主存储器。并行机器的体系结构模式主要有:
1)共享内存。2)共享磁盘。3)无共享。4)层次模式。它是前几种体系结构的混合。
并行数据库物理存储结构常用的划分技术有轮转法、散列分布和范围分布。
(3)分布式数据库系统
一个分布式数据库系统是一个节点的集合,其中每一个节点是一个独立的数据库系统节点。
1)特点:每一个节点是一个独立的数据库系统节点
分布式数据库系统必须看起来像非分布式系统
分布式数据库系统的用户的操作与非分布式系统完全相同
分布式系统的所有问题是内部的、实现级别的问题,而不是外部的、用户级别的问题
2)分布式数据库系统数据管理技术:
分布式数据库系统的分片是全局的,分配是局部的,分片、分配和副本信息保存在全局目录中
3)分布式查询:可以基于半连接的操作
4)分布式系统的并发控制和恢复解决的问题:多个副本的一致性,分布式提交、分布式死锁。分布
式系统具有位置透明性、复制透明性和分片透明性
3、客户机/服务器数据库系统体系结构
客户与服务器之间相连要满足一系列的标准(ODBC开放数据库互连标准和面向JAVA的标准JDBC)。
面向WEB应用的数据库系统:客户机、web server、数据库服务器组成,三层体系结构
4、面向对象的数据库系统
(1)面向对象的概念有:对象、属性、方法、消息、封装、类、继承(子类对象拥有超类对象的
全部属性和方法)和多继承等。
(2)对象涉及的概念:对象标识符OID唯一。
对象结构:三种基本类型构造器:原子、元组和集合,其他构造器:列表、包和数组。
(3)继承:多重继承(继承多个超类成员)
复杂对象:结构化复杂对象和非结构化复杂对象。典型的非结构化复杂对象为位图图像和长文本
串,BLOB 和字符串 CLOB。
(4)复杂的结构化对象存在两种引用语义:属主语义(is part of)和引用语义(is associate of)
5、对象一关系数据库系统
ODMG(object data management group)定义的对象数据库标准组成:对象模型、对象定义语言
(ODL)、对象查询语言OQL、面向对象语言绑定binding.
对象一关系数据库系统:以关系模型为基础,进行面向对象的扩充支持面型对象模型。
6、移动数据库系统
移动数据库是指支持移动计算环境的分布式数据库(应用在掌上电脑、PDA、车载设备 移动电话
等嵌入式设备中,也称嵌入式移动数据库系统)
移动环境的计算特征:高通信等待、不连续的连接、有限的电池寿命、客户机位置变化等。
移动数据库安全性保证:1)对终端进行认证 2)对无线通讯进行加密 3)对下载副本进行加密存
储
7、多媒体数据库系统
存储不同类型多媒体信息(图像、视频、音频和文档等
对多媒体数据库的检索称为基于内容的检索。识别多媒体内容的两个方法:基于自动分析以识别多
媒体内容的数学特征;手动建立索引以识别多媒体信息。
8、数据仓库与数据挖掘
数据仓库:面向主题的、集成的、非易变的、随时间变化的数据集合,用以支持决策。
数据库为事务处理服务。
数据仓库的基本特征包括以下几个方面:1)数据仓库面向主题。2)数据集成。3)数据相对稳定。
4)数据反映历史变化。
数据集市是一种更小、更集中的数据仓库,解决数据仓库分析时间长,代价高的确定
数据集市不等于数据仓库,数据集市的简单合并不能成为数据仓库
(1)数据仓库数据模型
数据仓库和OLAP操作基于多维数据模型。
多维数据模型概念:度量属性(决策者关心的实际意义的数量)、维属性(观察数据的角度,如时
间、地理等)、维的层次(年、月、日为时间维的层次,国家、地区、城市为地理维的层次)
多维数据:能够模式化为维属性和度量属性的数据统称为多维数据。多维数据构成了数据立方体。
多维存储模型涉及两类表:维表和事实表,常用的多维模式为星型(一个事实表和多个维表组成)和雪花型(将维表组织为层次结构)模式。
数据仓库利用位图索引实现高性能访问。
(2)数据仓库的体系结构
数据仓库系统组成:数据仓库(DW)、仓库管理和分析工具(查询工具和挖掘工具)。元数据是数
据仓库的核心。
三层客户机/服务器结构:数据仓库服务器、OLAP(联机分析服务器,包括关系OLAP(ROLAP),多
维OLAP(MOLAP))和客户端。
(3)联机分析:切片、切块、钻取(向下钻取(取得细节数据),向上钻取(取得综合数据))
和旋转(行列交换)等。
(4)数据挖掘
知识发现识别数据库中以前不知道的、新颖的、潜在有用的和最终可被理解的模式的非平凡过程。
数据挖掘是知识发现的核心工作和步骤。
知识发现(KDD)过程:数据准备、数据挖掘以及结果的解释和评估。
可视化技术在数据挖掘过程中扮演了重要的作用。
数据挖掘常用的方法包括以下几个方面:
(1)关联规则挖掘(支持度:规则代表的事例占全体事例的比例;可信度:规则代表的事例占前提
条件事例的比例)。
(2)分类。 (3)聚类分析。(4)预测。(5)优化
WEB挖掘:从WWW的资源和行为中抽取感兴趣的、有用的模式和隐含的信息。可分为三类:Web内容
挖掘(从文档内容或文档描述中抽取知识的过程)、Web结构挖掘(从WWW的组织结构和链接关系中
挖掘知识,发现重要页面,对页面排序)和Web使用记录挖掘(从Web的访问记录中抽取感兴趣的
模式,提供个性化服务)。