数据库新技术.docx
《数据库新技术.docx》由会员分享,可在线阅读,更多相关《数据库新技术.docx(15页珍藏版)》请在冰豆网上搜索。
数据库新技术
第一章数据库技术的发展
1数据库发展的3个阶段和特点?
人工管理阶段(上世纪50年代初期)
数据不保存
应用程序管理数据
数据不共享
文件系统阶段(上世纪50年代后期)
数据物理结构和逻辑结构的分离
数据可以长期保存
由文件系统管理数据
数据文件是面向应用的
数据共享性差,冗余度大
数据独立性差
数据库系统阶段(上世纪60年代后期)
数据结构化
数据的共享性高,冗余度低,易扩充
数据独立性高
数据由DBMS统一管理和控制
数据不具有独立性
2数据模型的定义?
通用的数据模型有哪些?
给出其特点?
❑数据库的数据模型一般由三部分组成,它们是:
Ø数据模式(数据结构)
Ø建立在模式上的操作
Ø数据的完整性约束
3数据库中数据的完整性约束有哪些?
实现方式如何?
❑实体完整性、域完整性、参照完整性和用户定义的完整性。
❑实体完整性:
关系中键属性的值不能取空值(主键、索引、UNIQUE,IDENTIFY属性来实现)。
❑域的完整性:
指定列有效的输入值,通过数据类型、格式(CHECK约束和规则)或可能的取值范围(FOREIGNKEY,CHECK,DEFAULT,NOTNULL等)来定义。
❑参照完整性:
关系间引用所遵循的规则,与外键有关(FOREIGNKEY,CHECK)。
❑用户定义的完整性(用户的特定业务规则)。
4SQL的特点是什么?
SQL的组成?
❑特点有:
❑
(1)语法简单,易学易用,类似于英语自然语言。
❑
(2)高度非过程化的语言。
只输入操作的种类和范围,不关心存取路径等内容。
❑(3)面向集合的语言。
❑(4)SQL独立使用,也可以嵌入到宿主语言
❑(5)功能强大。
定义关系模式、创建数据库、插入数据、更新数据、复杂查询、维护数据、重构数据库和控制数据库安全等。
5数据库管理系统的功能是什么?
❑DBMS的功能
科学地组织和存储数据、高效地获取和维护数据
❑数据库运行管理
这是指DBMS运行控制和管理功能。
包括多用户环境下的事务的管理和自动恢复、并发控制和死锁检测(或死锁防止)、安全性检查和存取控制、完整性检查和执行、运行日志的组织管理等。
这些功能保证了数据库系统的正常运行。
❑数据组织、存储和管理
DBMS要分类组织、存储和管理各种数据,包括数据字典、用户数据、存取路径等。
要确定以何种文件结构和存取方式在存储级上组织这些数据,如何实现数据之间的联系。
数据组织和存储的基本目标是提高存储空间利用率和方便存取,提供多种存取方法(如索引查找、Hash查找、顺序查找等)提高存取效率
❑数据库的建立和维护
包括数据库的初始建立、数据的转换、数据库的转储和恢复、数据库的重组织和重构造以及性能监测分析等功能。
❑事务处理并发/同步控制,事务完整性、原子性等
❑其他功能
包括DBMS与网络中其他软件系统的通信功能;一个DBMS与另一个DBMS或文件系统的数据转换功能:
异构数据库之间的互访和互操作功能等。
6数据库管理系统的层次结构?
给出各层的功能、实现原理?
用例子说明各个层次是如何协助完成相应的功能?
•最上层是应用层,位于DBMS核心之外。
·它处理的对象是各种各样的数据库应用,终端用户通过应用接口发出事务请求或各种查询要求。
该层是DBMS与终端用户和应用程序的界面层。
•第2层是语言翻译处理层。
它处理的对象是数据库语言,如SQL。
向上提供的数据接口是关系、视图,即元组的集合。
其功能是对数据库语言的各类语句进行语法分析、视图转换、授权检查、完整性检查、查询优化等。
通过对下层基本模块的调用,生成可执行代码。
•第3层是数据存取层。
该层处理的对象是单个元组。
它把上层的集合操作转换为单记录操作。
执行扫描(如表扫描)、排序、元组的查找、插入、修改、删除、封锁等基本操作。
完成数据记录的存取、存取路径维护、并发控制、事务管理等工作。
•第4层是数据存储层。
该层处理的对象是数据页和系统缓冲区。
执行文件的逻辑打开、关闭、读页、写页、缓冲区读和写、页面淘汰等操作,完成缓冲区管理、内外存交换、外存的数据管理等功能。
7数据库中事务的定义和特征?
事务的并发含义如何?
为什么要并发控制?
并发控制的原理是什么?
并发控制技术及其实现原理是什么?
❑事务(Transaction)是一个逻辑工作单元,是指数据库系统中一组对数据的操作序列。
一个事务可以是一条或一组SQL语句、或整个应用程序。
在SQL语言中,定义事务的语句有以下三条:
BEGINTRANSACTION
COMMIT
ROLLBACK
❑事务具备的以下几个基本特征又称为其应遵循的ACID准则:
(1)原子性(Atomicity)。
一个事务要么全部执行,要么全不执行,不允许仅完成部分事务。
(2)一致性(Consistency)。
事务的正确执行应使数据库从一个一致性状态变为另一个一致性状态。
数据一致性指数据应满足的约束条件。
(3)隔离性(Isolation)。
多个事务的并发执行是独立的,在事务未结束前,其他事务不能存取该事务的中间结果数据。
(4)持久性(Durability)。
事务提交后,系统应保证事务执行的结果可靠地存放在数据库中,不会因为故障而丢失。
❑同一数据库系统中往往有多个事务并发执行,如果不进行控制,就会产生数据的不一致性。
1.丢失更新
2.脏读
3.不可重读
8故障的不同类型?
日志的用途?
系统日志记录项包括哪些内容?
恢复子系统的任务和过程如何?
❑事务故障:
事务没有完成引起的故障,原因有:
1)逻辑错误,事务由于某些内部条件无法继续正常执行如有非法输入、找不到数据、溢出等。
2)系统错误,系统进入一种不良状态(如死锁),事务无法继续正常执行。
系统崩溃:
包括硬件故障、数据库软件或操作系统的漏洞造成的系统停止运转。
它导致系统易失性存储器中的内容丢失,事务处理停止,但非易失性存储器中的内容不会受到破坏。
介质故障:
在数据传送操作过程中由于磁头损坏或故障造成磁盘块上的内容丢失。
❑日志是DBMS用来记录事务对数据库的更新操作的文件,是日志记录的序列。
日志记录描述内容主要包括:
事务标识符是执行写操作事务的唯一标识符,数据项标识符是事务操作对象的唯一标识符,前像(BI)是更新前数据的旧值,后像(AI)是更新后数据的新值。
9数据模型的发展及其各种新型数据模型的特点?
❑数据构造器+处理原语,表达复杂的结构和丰富的语义。
❑函数语义模型FDM
❑语义数据模型SDM
❑RM/T模型以及E-R模型,引入了丰富的语义关联(ISA,ISP),加上丰富的结构构造器(TUBKE,LIST,SET等)
10数据库技术与相关技术的结合情况和发展?
❑数据库技术与多媒体技术相结合,形成了多媒体数据库系统
数据库技术与人工智能相结合,形成了知识库系统和主动数据库系统数据库技术与模糊技术相结合,形成了模糊数据库系统等
数据库技术与各种工程技术领域相结合,形成了各类不同应用的工程数据库系统等
❑1数据来源和特性的变化
应用领域的变化
计算机硬件及相关技术的发展
当前若干研究热点
未来几年发展趋势预测
11面向应用领域的数据库技术有哪些?
特点如何?
发展方向是什么?
❑工程设计与制造
❑实时
❑科学与统计
❑多媒体
❑INTERNET
❑科学研究和商务逻辑
第2章面向对象数据库
1.面向对象方法的起源是什么?
❑传统的关系数据库系统数据模型简单,无法满足新的计算机应用特别是非事务处理领域对数据库支撑要求的需要。
2.OID的主要特征是什么
3.如何用封装创建新数据类型?
.封装性(encapsulation)
Ø对象的封装性将一个对象划分为两个部分
•对象的内部表示(即对象中的属性组成与方法实现)
•对象的外部表示(即方法接口,亦称对象界面)。
Ø对象封装的优点
•有利于对象代码及数据结构的维护
•提高对象的可靠性与可重用性。
4.了解类型构造器,如何使用它们构造复杂对象结构?
5.简述面向对象数据库管理系统的基本功能?
Ø类管理
•类管理主要指对类的定义、操作进行管理。
Ø对象管理
•对象管理又称实例管理,此部分主要完成对类中对象的操纵管理。
Ø对象控制
•对象控制除了具有传统数据库中的数据控制功能,外,在OODBMS还补充了一些新的功能。
6.给出面向对象事务处理的特殊性?
❑长事务:
❑并发控制粒度
❑类封锁与关系表封锁
❑类层次的封锁:
封锁粒度\类封锁\类层次的封锁\长事务封锁
❑恢复:
在面向对象数据库中发生故障后,做恢复时需要使用UNDO与REDO操作
7如何扩展关系数据模型为对象关系数据模型?
❑从关系数据模型出发,移向对象思维,以关系数据库和SQL为基础扩展关系模型,具有扩展发展数据类型和允许用户自定义函数,同时具备面向对象特征。
❑满足关系数据库用户的要求,同时支持具有复杂数据管理需要的应用,加油强大的查询功能,有很多大的数据库厂商支持。
❑除了具备原来关系数据模型的各种特点外,还应提供以下特点。
❑对象—关系数据库系统在关系系统基础上应具有以下特征:
❑扩充数据类型;
❑支持复杂对象管理(组合、集合、引用);
❑支持继承(子类/超类,单继承/多继承);
❑提供通用规则系统(事件和动作为任意SQL语句的主动性规则、自定义函数、规则的继承)
8对象关系数据库语言-SQL3包含的内容有哪些?
第3章XML数据库
1XML和HTML标记用法有什么不同?
❑HTML(“HypertextMarkupLanguage”超文本标记语言)就是一种标记语言。
同时,HTML里面有很多标记,都是在HTML4.0里规范和定义的。
❑XML里允许用户创建标记,称为可扩展性。
(功能强大的原因)
2XML中属性和元素有什么不同?
❑属性和子元素的比较
Ø属性是左标记的一部分
Ø子元素是文档内容的部分
Ø同一信息两种方法都可以
•….
•
A-101…
❑Suggestion:
用属性作为元素的标识符,用子元素表示文档内容的部分
3XML模式和XMLDTD之间有什么不同?
4什么是XML数据库,其主要特点是什么?
讨论XML数据库与Web数据库的联系与区别?
❑XML数据与关系数据模型是不同的,它是一种带标签的树形结构。
5XML会取代关系数据库吗?
会取代HTML吗?
为什么?
6XML的查询访问句法?
7XML的优缺点有哪些?
8给出使用XQUERY中对XML进行查询的方法?
9写出下面XML的DTDB表示?
10对下页的XML用XPATH,XQUERY写出下列查询语句:
查询所有的客户元素?
查询所有的客户名称?
给出所有客户的姓名、账号信息、余额信息?
返balance值大于500的账户元素?
Downtown
500
Perryridge
900
Joe
Monroe
Madison
Lisa
Mountain
MurrayHill
Mary
Erin
Newark
第4章分布式数据库
1分布式数据库定义、特点?
◆分布式数据库系统是地理上分布在网络的不同结点而逻辑上属于同一个系统的数据库系统。
◆分布式数据库系统的特点
1.数据是分布的
2.数据是逻辑相关的
3.结点自治性
2全局应用?
什么是局部应用?
一个典型的全局应用的例子是银行转账。
要求从一个分行的账户(设在DBl数据库)中转让若干金额到另一个分行的账户(设在DB3数据库)中去,因此要同时更新两个结点上的数据库。
3分布式数据库管理系统DDBMS的主要功能?
组成是什么?
分布式数据库管理系统的组成
1.局部数据库管理系统(LDBMS)
2.全局数据库管理系统(GDBMS)
3.全局数据字典GDD
4.网络通信管理CM
分类:
同构(数据模型相同)系统、异构系统
4分段模式和分布模式?
数据分布透明性?
有哪些不同级别的分布透明性?
❑分片透明性指用户不必关心数据是如何分片的。
❑位置透明性:
数据在结点间的转移不会影响应用程序;对冗余型的系统,用户不必关心多个副本存储在哪些结点,因而用户不需维护重复副本的一致性。
❑局部映象透明性:
该透明性提供数据到局部数据库的映象。
❑无透明性
5有下列全局模式、分段模式和分布模式:
全局模式:
STUDENT(NUMBER,NAME,DEPT)
分段模式:
STUDENT1=SELECT*FROMSTUDENT
WHEREDEPT=”EE”
STUDENT2=SELECT*FROMSTUDENT
WHEREDEPT=”CS”
分布模式:
STUDENT1存放在结点1和结点2
STUDENT2存放在结点3和结点4,设DEPT只有“CS”和“EE”两种取值。
分别在分段透明性、位置透明性和本地映射透明性下,写一个用学生号查询学生姓名的应用。
6试述分布式查询处理的一般过程。
❑在分布式数据库中有三类查询:
局部查询、远程查询和全局查询。
❑局部查询和远程查询:
单个结点上的数据处理,集中式数据库的查询优化。
❑全局查询(GlobalQuery)或者多节点查询。
查询和优化处理技术较为复杂。
❑全局查询在执行时需把该查询分解成在不同结点上执行的子查询(Subquery),把各个结点上的结果进行处理和汇总,以获得全局查询结果。
7分布式事务的基本特征是什么?
❑一个事务包含多个数据请求,每个请求只能访问单个服务器
❑分布式数据库系统中的事务也应具有事务的ACID四个特征,即原子性(atomicity)、可串行性(serializability)、隔离性(isolability)和耐久性(durability)。
8二段提交协议的实现过程是什么?
第一阶段为Prepare阶段,
第二阶段为Commit或Abort阶段。
9三段提交协议与二段提交协议的区别是什么?
第一阶段:
同2PC协议;
第二阶段:
协调者若收到一个“Abort”或在规定时间内没有收到“Prepare”,通知所有参与者“Abort”事务。
否则向参与者发“Enter-Prepare-State”信息使其进入新的准备好提交状态,参与者收到该信息后将“Enter-Prepare-State”信息写入日志并给协调者发回一个“OK”信息;
第三阶段:
第二阶段协调者发出的不是“Abort”信息进入这一阶段,接收到参与者的“OK”信息后发“Commit”给参与者正式提交事务。
10分布式数据库中的可串行性与集中式数据库中的可串行化概念有何区别?
11试述分布式数据库的并发控制方法。
12分布式数据库的故障类型和恢复方法?
第5章数据仓库与数据挖掘
1什么是数据仓库?
特点?
数据仓库就是一个面向主题的、集成的、不可更新的、随时间不断变化的数据集合。
1)面向主题2)集成3)不可更新4)随时间不断变化
2建立数据仓库的步骤?
3.试述数据仓库与数据库联系与区别。
4给出数据仓库系统的结构?
说明每个部分的功能和实现方法?
数据仓库系统(DWS)由数据仓库、仓库管理和分析工具三部分组成
•源数据:
来自于多个数据源,包括企业内部业务运作数据库的数据、外部数据,即来自企业外部的信息,如市场调查与分析及各种文档之类的外部数据。
包含大量的细节数据,彼此作用不同。
•数据仓库管理:
明确需求后,进行数据建模,确定从源数据到数据仓库的数据抽取、清理和转换过程,划分维数及确定数据仓库的存储结构。
元数据是数据仓库的核心,它存储数据模型和定义数据结构、转换规则、仓库结构、控制信息等。
仓库管理包括对数据的安全、归档、备份、维护、恢复等工作。
•数据存储:
由数据仓库、数据集市与ODS(OperatingDataStore)构成,由关系或非关系的的数据引擎提供来自数据源的数据存储和管理。
•分析工具:
由报表工具、分析与决策支持工具、多维数据的OLAP分析工具、数据挖掘工具等组成,以实现决策支持系统的各种要求。
5数据仓库的设计原则是什么?
•数据仓库是面向主题的、集成的、不可更新的、随时间的变化而不断变化的,这些特点决定了数据仓库的系统设计不能采用同开发传统的OLTP数据库一样的设计方法,其设计过程必须遵循下述三条原则:
•面向主题原则
•数据驱动原则
•原型法设计原则
6数据仓库与数据挖掘的关系与区别是什么?
❑数据仓库设计大致有如下几个步骤:
❑明确主题
❑概念设计
❑技术准备
❑逻辑设计
❑物理设计
❑数据仓库生成
❑数据仓库的运行与维护
7试述数据挖掘的概念?
数据挖掘的步骤?
❑数据挖掘又称为数据库中的知识发现(KDD:
KnowledgeDiscoveryinDatabase),它起源于80年代初。
数据挖掘就是对数据库(数据仓库)中蕴涵的、未知的、非平凡的、有潜在应用价值的模式(规则)的提取。
❑数据挖掘就是从大型数据库(数据仓库)的数据中提取人们感兴趣的知识。
这些知识是隐含的、事先未知的潜在有用信息。
❑因此,我们认为数据挖掘必须包括三个因素:
Ø数据挖掘的本源:
大量、完整的数据
Ø数据挖掘的结果:
知识、规则
Ø结果的隐含性:
因而需要一个挖掘过程
❑数据挖掘一般可由下面5个步骤组成,它们是:
Ø数据集成
Ø数据归约
Ø挖掘
Ø评价
Ø表示
8数据挖掘发现的知识分类?
数据挖掘所发现的知识最常见的有以下几类:
❑广义知识(Generalization)
❑关联知识(Association)
❑分类知识(Classification&Clustering)
❑预测型知识(Prediction)
❑偏差型知识(Deviation)
9数据挖掘常用算法
❑目前常用的数据挖掘方法很多,它们大多属于数学统计方法或人工智能中的机器学习算法,以及人工神经网络/遗传算法等,在这里,我们简单介绍在数据库中常用的几种算法,它们是:
Ø用于特征规则挖掘的方法
•面向属性归约方法
•数据立方方法
Ø关联规则挖掘
Ø序列模式分析
Ø分类分析
Ø聚类分析
10数据挖掘的目标和任务?
11简述数据挖掘处理3个过程模型?
第六章特种数据库
1.传统的数据库存在什么局限性?
2.简述GIS中基本空间数据模型。
3.空间数据库的基本特征是什么?
❑空间数据是用于表示空间物体的位置、形状、大小和分布特征等方面信息的数据,适用于描述二维、三维和多维分布的关于区域的现象。
❑不仅包括物体本身的空间位置及状态信息,还包括表示物体的空间关系的信息。
❑属性数据为非空间数据,用于描述空间物体的性质,对空间物体进行语义定义。
4.空间数据库的基于方位的关系有哪些?
基于方位的关系是描述空间对象之间的空间相互作用关系。
5.简述空间数据库中矢量与栅格数据结构比较。
矢量图是用一系列计算指令来表示的图,是用数据方法描述的图,本质上是很多个数学表达式的编程语言表达。
栅格就是一个规则的阵列(matrix),其中各个像元(pix)互不影响;而矢量图是由一些坐标和由这些坐标组成的线、面、体,它们之间有着密切的关系。
6.空间索引的R树的插入删除的机理是什么?
R树具有如下基本性质:
根结点至少有两个索引项,除非根结点是R树的唯一结点;每个非叶结点有m到M个索引项。
7.多媒体数据的定义和特征是什么?
多媒体数据库是数据库技术与多媒体技术结合的产物,它不是对现有的数据进行界面上的包装,而是从多媒体数据与信息本身的特性出发。
1)多媒体数据库在其处理数据对象、数据类型、数据结构、数据模型、应用对象等方面都与经典数据库有着较大差异。
2)多媒体数据库存储和处理现实世界中的复杂对象,这些对象往往通过多种形式的媒体来综合表现自己,如动态的视频,图像或声音媒体都作为无格式化数据而存在,存储对象变化使得存储技术增加了新的内容,需要进行特殊处理,如进行数据压缩等。
3)多媒体数据库是面向应用的,它并不是基于某一特定的数据类型,而是随着应用领域和对象的不同而建立相应的数据模型,如可以概括地划分多媒体数据为简单型、复杂型和智能型,用来表示不同类型的应用。
4)多媒体数据库从实用性要求出发,强调媒体间的独立性,其概念可以与经典数据库多要求的数据独立性进行类比,即多媒体数据库用户应当最大限度地忽略各媒体间的差别,从而实现对多媒体数据的操作与管理。
5)多媒体系统的意义和作用就在于能将物理存储的信息以多媒体形式向用户表现和提供,多媒体数据库更强调用户界面的灵活性和多样性。
单媒体显示相对容易,而混合媒
体如声像的表现,由于涉及到媒体的同步和集成,要复杂得多。
6)多媒体数据库应具有较强的对象访问手段,访问方式包括通过多媒体对象类型和建立的对象聚集。
通过多媒体关系,