数据库新技术复习

第1章 关系数据库模型和关系运算

要求掌握的基本概念和理论

1. 与网状和层次数据库相比,关系数据库有哪些优点?

层次模型:

有且仅有一个结点无双亲,称为根结点;

其它结点有且仅有一个双亲。

层次模型的数据结构是一棵树。

网状模型:

允许一个结点可以有多个双亲;

多个结点无双亲结点。

关系型数据库:

基本结构是二维表,一张表称为一个关系。

与层次和网状模型比较,关系模型有下列优点:

    数据结构单一;

    建立在严格的数学概念基础上;

    将数据定义和数据操纵统一在一种语言中,使用方便,易学易用。

2. 试述关系模型的完整性规则

实体完整性

关系中键属性的值不能取空值。 

参照完整性

是关系间引用所遵循的规则,与外键有关

用户定义的完整性  

数据间应满足的语义约束关系,

3. 试述等值连接与自然连接的区别和联系

联系

自然连接是在两个关系共同属性上的等值连接

区别

等值连接中不要求相等属性值的属性名相同,而自然连接要求相等属性值的属性名必须相同

等值连接不将重复属性去掉,而自然连接去掉重复属性

4. 函数依赖、部分依赖、完全依赖、传递依赖、平凡依赖

https://www.cnblogs.com/guojiaxue/p/12655068.html

5. 函数依赖公理和推论

定义

p105

公理 推论

6. 函数依赖的覆盖和等价

p142

要求掌握的基本算法

1. 求关系的并、差、交、连接、选择、投影、除运算。

p67 注意是操作元素,某一行

笛卡尔积

结果关系的属性个数:k1+ k2

结果关系的元组数: m×n

p75

选择

p83

投影

p85

连接

自然连接 p90

θ连接 p92

除法

https://blog.csdn.net/hao134838/article/details/48375647

https://blog.csdn.net/t_1007/article/details/53036082

2. 关系运算在查询中的应用。

3. 属性集X关于F的闭包X+的基本算法

闭包:注意样例以及定义 p113 p 112

属性闭包:114

4. 函数依赖集的成员测试算法(MEMBER(F,X→Y)). 所有依赖于x的属性

注意p116 A+ 第一轮 A->B, B->C都被放进去

p117

5. 检验分解是无损算法

p137

6. 检验分解算法是否保持函数依赖 p145

7. 生成3NF的分解算法

范式:

1。如果一个关系模式R中的每个属性A的域值都是原子的,即属性值是不可再分的,则关系模式R属于第一范式

2。设关系模式R(U, F),如果RÎ1NF且所有的非主属性完全依赖于R的每个键,则RÎ2NF。

2。设关系模式R(U, F),若RÎ1NF且在R中没有非主属性传递依赖于R的键,则RÎ3NF

定理:

1。若关系模式R(U,F)Î3NF,则RÎ2NF

8. 规范化关系模式为BCNF算法 p150

设关系模式R(U,F),若RÎ1NF且R中没有任何属性传递依赖于R的任一键,则RÎBoyce-Codd范式(BCNF)。

主属性内不可有依赖

 

 

第 2章 关系数据库设计和数据库管理系统

要求掌握的基本概念和理论

1. 试述数据库设计过程,及每个阶段的任务。

部分:

数据库设计内容分为二部分:结构设计和行为设计。

    结构设计主要是确定数据库的模式;

    行为设计是数据库应用系统的设计,包括模块设计、界面设计、事务的划分和编写程序代码。

阶段

需求分析、概念设计、逻辑设计、物理设计、实施和运行、使用和维护 p7

2. 什么是数据库的逻辑结构设计?试述其设计步骤。

定义:p34

把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。

步骤:

1. 将概念结构转换为一般的关系、网状、层状模型;

2. 将转换来的关系、网状、层状模型向特定DBMS支持下的数据模型转换;

3. 对数据模型进行优化。

3. 试述数据库物理设计的内容和步骤。p49

内容

索引设计、聚类设计、分区设计、确定系 统配置参数、评价物理结构设计

步骤

(1)确定数据库的物理结构,在关系数据库中主要指存取方法和储存结构。

(2)对物理结构进行评价,评价的重点是时间和空间效率。

设计原则

事务响应时间小

存储空间利用率高

事务吞吐率大

4.数据库管理系统的主要功能有哪些? p88

(1) 数据库定义;(2) 数据操纵

(3) 数据库控制;(4) 数据库维护      

5.数据库管理系统有哪几部分组成?p93

(1)数据和元数据存储

(2)存储管理器

(3)查询处理器

(4)事务管理器

(5)  输入模块---模式修改、查询和修改

6.开发一个数据库管理系统的主要技术难点在哪里?对中国如何尽快开发自己的数据库管理系统,给出你的建议。

数据库设计

要求:给出 E---R 图,将其转换为关系模型、指出转换结果中每个关系的候选键。

 

第3-4章 分布式数据库和面向对象数据库

要求掌握的基本概念和理论

1.分布式数据库的有哪些特点?

1. 数据是分布的 

2. 数据是逻辑相关的

3. 结点自治性

2.分布式数据库管理系统有哪几部分组成?p5

  1.局部数据库管理系统(LDBMS)

  2.全局数据库管理系统(GDBMS)  

  3.全局数据字典GDD 

  4.网络通信管理CM  

3.分布式数据库系统能够提供哪些分布透明性?不同透明性对应用程序的编程有什么影响?

透明性:

分片透明性

位置透明性

局部映象透明性 

无透明性

编程:

分片透明性:

scanf (“%s”, sno);

EXEC SQL SELECT SNAME, CITY INTO :sname, :city

FROM SUPPLIER WHERE SNO = :sno;

printf (“%s \t %s,”, sname, city);

位置透明性:

scanf (“%s”, sno);

EXEC  SQL  SELECT SNAME, CITY  INTO :sname, :city

FROM SUPPLIER1  WHERE SNO = :sno;

If (!found){

EXEC  SQL  SELECT SNAME, CITY  INTO :sname, :city

FROM SUPPLIER2  WHERE SNO = :sno;}

printf (“%s \t %s,”, sname, city);

局部映像透明性:

scanf (“%s”, sno);

EXEC SQL SELECT SNAME, CITY INTO :sname, :city

FROM SUPPLIER1 AT SITE-1

WHERE SNO = :sno;

If (!found){

EXEC SQL SELECT SNAME, CITY INTO :sname, :city

FROM SUPPLIER2 AT SITE-3

WHERE SNO = :sno;}

printf (“%s \t %s,”, sname, city);

4.半连接在分布式查询优化中的作用?会计算简单的半连接。p34

https://blog.csdn.net/horses/article/details/108152329

https://www.jianshu.com/p/8eeb31dc27ef

作用:

缩减关系的大小,以减少数据传输量

5.试述事务的概念及事务的4 个特性。

定义:p36

是用户定义的一个数据库操作序列,是数据恢复和并发控制的基本单位

数据库系统在执行事务时,要么执行事务中全部操作,要么一个操作都不执行。

特性:p37

原子性、一致性、隔离性、持久性

6.在数据库管理系统中为什么要采用并发控制技术?常用并发控制技术有哪些?

为什么:p41

(1)改善系统的资源利用率

(2)改善短事务的响应时间

并发控制技术:p40

1、串行访问;2、并发访问;3、交叉并发;4、同时并发

并发机制:p41

基于封锁的方法、基于时戳的方法、版本更新方法

7.什么是两段封锁协议?(Two-Puase Looking    2PL协议)

为了保证数据库的一致性,DBMS需要提供并发控制机制,以保证并发操作的正确性p50

(1). 任何事务在对数据操作前必须先获得锁

(2). 事务在释放一个锁后不再获得任何锁。

8.数据库恢复的基本技术有哪些?

集中式数据库系统中的恢复p56

集中式数据库系统中恢复的手段主要是利用转储和日志

检查点机制

(1).将日志缓冲区中的内容强行写入日志文件;

(2).将数据库缓冲区中的内容强行写入外存储器;

(3).将检查点记录的地址写入重启动文件中

分布式数据库系统中的恢p65

二阶段提交协议(2PC):

三阶段提交协议(3PC):

9.什么是日志文件?为什么要设立日志文件?p56

保存每一次对数据库进行更新操作的有关信息的文件,由DBMS自动建立和记录。

(1).事务处理的标识符(开始、结束);

(2).操作的类型(插入、删除、修改);

(3).更新前的值;

(4).更新后的值.

10. 面向对象数据库技术的主要难点。p50

已有OODBMS在程序设计接口、实现方法、对查询的支持等多个方面存在许多差异

模式进化难于实现

与应用程序密切相关,许多系统仅支持一种语言

健壮性、容错性;

缺乏开发工具

 

 第5—8章 新型数据库

1. 叙述key/value的数据结构。

第五章 p34

域类似于传统关系数据库中的“表”,但域无结构,作用是容纳数据项; 数据项用Key定义,一个域中的不同数据项可能具有不同的结构,数据属性全部是字符串类型,但在有些实现中,属性也可以具有简单的类型,如整型、字符串数组等。

2. Key/Value数据模式与关系数据库的比较有哪些优点和缺点?p38

Key/Value的优点

便于扩展,适于云计算的环境

与应用程序代码的兼容性更好

Key/Value的缺点:

数据完整性约束转移至应用程序

目前的很多Key/Value数据存储系统之间不兼容

在云环境中,很多用户和应用使用同一个系统。为了避免一个进程使共享环境超载,往往严格限制一个单独的查询所能够产生的全局影响。

3. 在数据切分机制中,一致性哈希算法的基本原理是什么?p41

一致性哈希算法:哈希函数的输出范围被看作一个固定的“环”。系统中的每个节点被赋予环中的一个随机值,该随机值用来表示其在“环”中的位置。每个“键值”对应一个数据项,根据该键值的哈希值可生成数据项在环中的位置position = hash(key),然后顺时针沿着环找到value大于position的第一个节点,这个节点就是该数据项的存储节点。

优点:

每个节点都负责存储环中该节点与其后继节点之间区域对应的存储对象,也称为“区间负责制”。区间负责制使得节点的加入和退出只需要其邻居节点进行数据迁移,而不影响其它节点

缺点

采用随机的位置值来决定数据项存储在哪个节点上,这导致节点之间负载不均衡。

4.云计算按照服务类型可以分为哪几类?第六章(一)p11

SaaS:互门户网站、电子邮件、数据仓库、数据挖掘、通用业务软件等服务

PaaS:共享Web服务器、应用服务器、数据库管理系统等服务

IaaS:虚拟服务器,个人弹性主机,云存储,数据备份等服务

5. Google云计算中分布式结构化数据表Bigtable的设计动机是什么? 第六章(二)p60

需要存储的数据种类繁多:Google目前向公众开放的服务很多,需要处理的数据类型也非常多。包括URL、网页内容、用户的个性化设置在内的数据都是Google需要经常处理的

海量的服务请求:Google运行着目前世界上最繁忙的系统,它每时每刻处理的客户服务请求数量是普通的系统根本无法承受的

商用数据库无法满足Google的需求:一方面现有商用数据库设计着眼点在于通用性,根本无法满足Google的苛刻服务要求;另一方面对于底层系统的完全掌控会给后期的系统维护、升级带来极大的便利

6. 试比较Hadoop中的数据库HBase和传统关系数据库的不同.

定义:是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统 第五章p72

Hbase的特点:第六章(三)p28

大:一个表可以有上亿行,上百万列(列多时,插入变慢)

面向列:面向列(族)的存储和权限控制,列(族)独立检索

稀疏:对于为空(null)的列,并不占用存储空间,因此,表可以设计的非常稀疏。

每个cell中的数据可以有多个版本,默认情况下版本号自动分配,是单元格插入时的时间戳

HBase中的数据都是字符串,没有类型;

强一致性:同一行数据的读写只在同一台Region Server上进行

水平伸缩

行事务:同一行的列的写入是原子的

支持有限查询方式和一级索引

高性能随机写

HBase为NoSQL,不支持表关联 p41

7. 了解MapReduce的基本工作原理

 

8. 了解Hadoop中的分布式数据库--- Hbase的逻辑模型和物理模型

逻辑模型:第六章(三)p47

我们可以将一个表想象成一个大的映射关系,通过行键+列族+列+时间戳就可以定位特定的数据

物理模型:第六章(三)p48

按照列来保存

9. 在亚马逊的分布式Key/value数据存储与管理系统Dynamo中,采用的哪些技术来保证数据的可伸缩性和最终一致性。

第六章(四) p6

可伸缩:一致性哈希算法

最终一致性:向量时钟

10. 阐述SQL Azure和SQL Server的相同点和不同点。

第六章(五) p18

1.物理管理和逻辑管理

ØSQL Azure在管理上突出强调了物理管理,能够自动复制所有存储数据以提供高可用性,同时还可以管理负载均衡、故障转移等功能 

Ø用户不能管理SQL Azure的物理资源

ØSQL Azure不能使用SQL Server备份机制,所有的数据都是自动复制备份

2.服务提供

Ø部署本地SQL Server时,需要准备和配置所需要的硬件和软件

Ø用户在Windows Azure平台上创建了账户后,便可以使用SQL Azure数据库,同时还可以访问所有提供的服务

Ø每个SQL Azure订阅都会绑定到微软数据中心的某个SQL Azure服务器上

ØSQL Azure服务器上的数据库通常会在数据中心其他物理机上进行备份

3.Transact-SQL支持

ØSQL Azure中由微软进行物理资源的管理,因而这些类型的参数并不适用于SQL Azure

4.特征和类型

ØSQL Azure不支持SQL Server的所有特征和数据类型。在现今版本的SQL Azure中,不支持分析、复制、报表和服务代理等服务

 

11. 大数据的4V特征是什么?

第七章p16

Volume:非结构化数据的超大规模和增长

Value:大量的不相关信息

Variety:大数据的异构和多样性

Velocity:实时分析而非批量式分析

12. 分布式数据系统的CAP原理的三要素是什么?第五章p24

一致性(Consistency)

是指执行了一次成功的写操作之后,未来的读操作一定可以读到这个写入的值。

可用性(Availability)

(指的是快速获取数据)

每一次操作总是能够在确定的时间返回

分区容忍性(Partition tolerance)

系统中任意信息的丢失或失败不会影响系统的继续运作。

13. 几种主流NoSQL数据库包括哪些?

第五章p27

Google的BigTable

Amazon的Dynamo

p29

14. 数据仓库数据的基本特征是什么? 第八章p34

数据仓库的数据是面向主题

数据仓库的数据是集成的

数据仓库的数据是不可更新的

数据仓库的数据是随时间变化的

15. 什么是数据挖掘?数据挖掘常用的技术方法哪几种? 第八章p43 44

数据挖掘

数据挖掘是从超大型数据库(VLDB)或数据仓库中发现并提取隐藏在内的模式的过程.

这些模式是有效的、新颖的、有潜在使用价值的和易于理解的.目的是帮助决策者寻找数据间潜在的关联.

方法:

人工神经网络、遗传算法、决策树方法、粗集方法、邻近搜索方法、规则推理、模糊逻辑和公式发现等。

 

16.叙述区块链是怎么做到不可篡改的。

区块链是通过算力和共识来做到不可篡改的。

数学上,是密码学来保证。

通过随机+不可逆计算+时间戳

 

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值