聚簇索引,也叫簇类索引,原理是对磁盘上实际数据重新组织以按指定的一个或多个列的值排序于聚簇索引的索引页面指针指向数据页面,所以使用聚簇索引查找数据几乎总是比使用非聚簇索引快。每张表只能建一个聚簇索引,并且建聚簇索引需要至少相当该表120%的附加空间,以存放该表的副本和索引中间页。就是以指定的列重新组织磁盘块的数据,这样查询的效率会很高。
既然是对磁盘上动手脚了,那么肯定是在内模式上了,
有正在运行的事务,那肯定不能静态,静态都停了,采用的是动态的,转储全部的数据库,也包含正在运行的(运行成功的话),所以全局。
静态全局转储:服务器停下来再转储;
动态全局转储:服务器在运行的时候事务进行的转储;
静态增量转储:增量数据;
动态增量转储:增量数据;
动态全局转储可以在运行时获取数据库的当前状态并转储,包括正在进行的事务的数据。它能够捕获事务的变化以及正在进行的写操作,并将其同步到转储中,从而保证了转储数据的完整性和一致性。相比之下,静态全局转储只能在系统空闲或者事务未开始的情况下进行,无法捕获事务的动态修改,因此不适合在有正在进行的事务时进行全局转储。
传递是A-->B,B-->C,所以A-->C,增广是A-->B,AC-->BC;合并是A -->B ,A -->C ,所以A-->BC
分解是A-->B,B1∈B,所以A-->B1,伪传递是A-->B,WB-->C ,则AW-->C。
1 2 3 4 5 6 7 8
A、B、C、D、A、C、E、F
R⋈S,自然连接A 、B、C、D、E、F。σ,选择行R.B>S.E。
笛卡尔积:R X S,然后选择列A 、B、C、D、E、F,然后σR.B>S.E。加''标识字符,不加标识列号。选择B
同一事务有不同的名字,命名冲突;同一实体在不同ER图有不同的属性,结构冲突;属性重复了(在不同的ER图中都有),属性冲突。
所以选B,和C
4个属性ABCD了,元组(记录)个数,自然连接是拼接的不是相乘的,R的前三条拼上S的前两条。
6615--61;6151--15;6154--15------->6615、6151、6154
派生的,可由别的列计算而来,年龄根据出生日期和当前日期计算得出。
复合的,可分割,多值的有多个取值。
单值属性:比如学号,每个人只有一个;多值属性:比如兴趣:篮球、排球、跑步....
复合属性:比如家庭住址分XXX省XXX市XXX区.....XXX村;简单属性,不可在分割了,如性别
这类题,首先求候选关键字:A、D。闭包猜测跟候选关键字一样。
附上闭包的真正推导计算。
选C。分布透明包含4个方面:分片、复制、位置、逻辑。
分片透明:表分片,垂直(把列切开)和水平(把行切开)分片,它透明就是不关心表数据块如何存储的。
复制透明:不关心数据怎么来的(从哪些节点复制的,上海节点还是北京节点)。
位置透明:不关心给我提供的服务是哪里的,上海服务器还是北京服务器
逻辑透明:不关心局部场地使用的是哪些数据模型(管你是关系模型还是网状模型还是层次模型)
A 肯定错了,传递依赖B-->D,D-->E;B也不对,就没有E-->A;C不对,所以选D。
有损无损:R1∩R2 = R1-R2或者R2-R1
R1∩R2 = {B};R1-R2 = {A,C},R2-R1 = {D,E}。看看B能不能推导出R1-R2或者推导出R2-R1,根据依赖集B--->D,B--->E,能推导出R2-R1,满足其中之一,那就可以了,无损的。
保不保持函数依赖:看函数每个依赖的左右两边属性是否都在<同一个>分解的模式中。
所有依赖有A-->BC,B-->D,D-->E,R1有A、B、C;R2有B、D、E
A-->BC,A、B 、C都在R1中,保持了
B-->D,B和D在R2中都有,也保持了
D-->E,D和E在R2中都有,也保持了
所以每个依赖集的左右两边都在同一个分解的模式中,保持了函数依赖,所以选A。第二步太复杂耗费时间不做判断了
用户 用户 用户
全局外模式 全局外模式 全局外模式
----------------------------------------------------------------------映像1
全 局 概念 模 式
----------------------------------------------------------------------映像2
分 片 模 式
----------------------------------------------------------------------映像3
分 布 模 式
----------------------------------------------------------------------映像4
局部概念模式 局部概念模式 局部概念模式
局部内模式 局部内模式 局部内模式
局部数据库 局部数据库 局部数据库
选C错误,选择D??????????
1 2 3 4 5 6 7
A B C D E F G
为啥不是10个列,因为是在自然连接基础上进行列的选择:Π1,2,4,6,7(R⋈S)
投影列,Π12467:R.A,R.B,R.D,S.F,S.G;选择行,σ1<6:R.A < S.F
再加上自然连接自带的条件:R.A=S.A;R.B=S.B;R.C=S.C
选择B和C
这个是例题,它强调的是长期保留并定期加载和刷新,很少对数据修改和删除,相对稳定性;
反映历史变化会强调,前一段时间如何,这一段时间如何。
数据仓库四大特点:面向主题、集成、相对稳定、反应历史变化
老规矩,先求候选关键字:根据依赖集先干掉A2,A 3,A4,A6,剩下A1和A5,他两个能推算出其他所有的,所以A1和A5是唯一的候选关键字。存在非主对主键(A1和A5)的部分依赖,不满足2NF,所以是1NF。选C和A
1NF:消除小表;2NF:消除非主对联合主键的部分依赖;3NF消除非主对主键的传递依赖;BCNF:消除主属对主键的部分依赖和传递依赖。
???????????????
开始选了A,但是是错误的,没有审好题目,题目是分布式数据库两阶段提交协议,不是两段锁协议。选C
两段锁协议:生长阶段(加锁阶段)、衰退阶段(解锁阶段)---------关系型数据库的非分布式的
两阶段提交协议:分布式系统中实现一致性的两种不同协议。
两阶段提交协议:请求阶段/表决阶段/ 预提交、提交阶段/执行阶段/提交。
在预提交阶段,协调者会向所有参与者发送事务请求,并等待它们的确认(Vote)。如果所有参与者都对事务请求进行确认,那么协调者会向所有参与者发送提交请求,并等待它们的提交反馈。如果所有参与者都提交了事务,那么事务就被认为是成功的,否则会进行回滚(Abort)。两阶段提交协议可以确保分布式系统在进行事务提交时的一致性,但存在阻塞等待的问题。
1.同步阻塞问题、2.单点故障、3.数据不一致
三阶段提交协议:准备/canCommit阶段、预提交/preCommit、提交/doCommit
为了解决两阶段提交协议中的阻塞等待问题,三阶段提交协议引入了第三个阶段,即准备(Prepare)阶段(把两阶段提交协议的第一个阶段分成了两步: 询问,然后再锁资源,最后真正提交)。在三阶段提交协议中,事务首先进入准备阶段,在该阶段协调者会向所有参与者发送事务请求,并等待它们的准备反馈。如果所有参与者都准备好参与事务,那么事务进入提交阶段。在提交阶段,协调者会向所有参与者发送提交请求,并等待它们的提交反馈。如果所有参与者都提交了事务,那么事务就被认为是成功的,否则会进行回滚。三阶段提交协议通过引入准备阶段,可以在分布式系统中实现更高的并发性,但仍然存在单点故障的问题。
总结起来,两阶段提交和三阶段提交是实现分布式系统一致性的两种不同协议。两阶段提交协议包括预提交和提交两个阶段,而三阶段提交协议包括准备、预提交和提交三个阶段。三阶段提交在解决了部分阻塞等待问题的同时,引入了可能的单点故障。在选择使用哪种协议时,需要根据具体的需求和系统特点进行权衡和选择。
参考:两阶段提交和三阶段提交的区别_两阶段和三阶段提交的区别-CSDN博客
二阶段提交与三阶段提交_什么是二阶段提交-CSDN博客
自然连接,重复列去掉,行需要属性列和属性值相同的。A,B,C,D,E,F,G
投影列:Π1,2,4,6 =A,B,D,F。选B
这种题老规矩,先求候选关键字,根据依赖集干掉右边出现过的,剩下A1,看看剩下的能不能推导出其他所有的。A1-->A2A5,有了A2,A2-->A3A4,所以全推出来A1就是唯一的候选关键字。
F+是代表,F函数依赖集的闭包,通俗一点,就是从F函数依赖集能推导出来的依赖关系。
A3->A2A4是正确的。首先F中有直接的依赖关系:A3->A2,此外,又有A3->A2与A2->A4得出
A3->A4。A3->A2与A3->A4合并为A3->A2A4。
这个上面有类似的
上面有类似的,分片是对列(垂直)和行(水平)分割存不同地方;
复制透明:是不管你的数据哪来的(不同节点);
位置透明:不管你服务器地点
逻辑透明:不管你数据模型(层次?网状?关系?...)
自然连接:去掉重复列,并且需要相同属性和相同属性的值相等。4列:ABCD,元组有3个:6315,6574,6374。
1 2 3 4 5 6
A B C D C D
投影列:Π1,4=ΠA,R.D;选择行σ3=6 = σR.C=S.D。
A是传递,C是合并,B自反,D是分解
自反: Y∈X,Y∈U,则X-->Y(在R上)
增广:X-->Y,XZ-->YZ(在R上)
传递:X-->Y,Y-->Z,X-->Z
合并:X-->Y,X-->Z,X-->YZ
分解: X-->W,Z∈W,X-->Z
伪传递:X-->Y,WY-->Z,XW-->Z
自然联结,自然连接嘛,ABCDEF,6个
select R.A,R.C,S.B,S.C from R,S where R.B=S.B and R.C=S.C and R.C<S.F
选B、A、B。列排序用笛卡尔积后还是用自然连接后的具体看题意结合选项来。
这明显选C
解析:嵌入式数据库管理系统(Embedded DataBase Management System,EDBMS)就是在嵌入式设备上使用的DBMS。由于用到EDBMS的嵌入式系统多是移动信息设备,例如,掌上电脑、PDA、车载设备等移动通信设备,位置固定的嵌入式设备很少用到,因此,嵌入式数据库也称为移动数据库或嵌入式移动数据库。EDBMS的作用主要是解决移动计算环境下数据的管理问题,移动数据库是移动计算环境中的分布式数据库。嵌入式数据库管理系统一般只提供本机服务接口且只为前端应用提供基本的数据支持。
先求去候选关键字:A
R存在传递依赖,2NF就是要消除非主对联合主键的部分依赖的,3NF要消除非主对主键的传递依赖,R只能达到2NF。
R1和R2只有2个元素,只有A-->B和A--->C了,什么传递依赖,部分依赖都没了,达到3NF(结合选项)。
是否有损:U1∩U2 = U1 - U2 or U2 - U1。
U1∩U2 ={A};U1 - U2 = {B};U2 - U1={C},无论是 {B}还是 {C},A都可以推导出来。所以无损分解。
保不保持函数依赖依赖:看依赖集里,每个依赖左右两边是否都在同一个分解里。即分解后的关系模式能够还原出原关系模式。
A--->B:U1中有A和B
B--->C:U1和U2中都没有保持
最后判断是否保持函数依赖:R1中包含A与B两个属性,所以A→B依赖关系被R1保持下来了。而R2中的A与C两个属性,没有保持任何函数依赖,导致函数依赖B→C丢失,所以分解没有保持函数依赖。
所以保持了函数依赖。选择D和D
第一个是外键约束。我选D,参考答案选C,我也没明白为啥是C,DeptID外键不是应该在EMP上定义么。
笛卡尔积方式:
1 2 3 4 5 6 7 8 9 10
EmpId ename sex age tel DeptID DeptID DeptName Dtel DEmpID
自然连接方式:
1 2 3 4 5 6 7 8 9
EmpId ename sex age tel DeptID DeptName Dtel DEmpID
单独部门列号
1 2 3 4
DeptID DeptName Dtel DEmpID
姓名、年龄,限定了2和4,排除C和D。
A:EMP X DEP 是笛卡尔积,并且选择行是8是DeptName='开发部'的行,最后执行投影列2和4:empname和age
B:EMP和已经执行选择行2DeptName='开发部'的部门信息自然连接,然后再选择1=9:EmpId = DEmpID,最后再选出2和4
我没明白A有啥问题,参考答案是选择B
解析:数据挖掘(英语:Data mining),又译为资料探勘、数据采矿。它是数据库知识发现(英语:Knowledge-Discovery in Databases,简称:KDD)中的一个步骤。数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程。数据挖掘通常与计算机科学有关,并通过统计、在线分析
处理、情报检索、机器学习、专家系统(依靠过去的经验法则)和模式识别等诸多方法来实现上述目标。
数据挖掘是通过分析每个数据,从大量数据中寻找其规律的技术,主要有数据准备、规律寻找和规
律表示3个步骤。数据准备是从相关的数据源中选取所需的数据并整合成用于数据挖掘的数据集;规律寻找是用某种方法将数据集所含的规律找出来;规律表示是尽可能以用户可理解的方式(如可视化)将找出的规律表示出来。数据挖掘的任务有关联分析、聚类分析、分类分析、异常分析、特异群组分析和演变分析,等等。