分布式数据库答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分布式计算与分布式系统
No.1:
1.分布式数据库的特点:
*物理分布性:分布式数据库中的数据是分散存储在计算机网络中的多个站点上的。
*逻辑整体性:数据逻辑上是互相联系的。
*站点自治性:各站点上的数据由本地的数据库管理系统管理,完成本站点的应用。
2.分布式数据库和集中式数据库的差别:
*在集中式数据库中,数据独立性指数据的逻辑独立性与物理独立性。在分布式数据库中,还增加了数据分布独立性,即分布透明性。
*在集中式数据库中,对共享数据库的控制是集中的,在分布式数据库中,数据可以局部共享或全局共享。
*在集中式数据库中,尽量减少冗余度是系统目标之一,在分布式数据库中却希望增加冗余数据,存储同一数据的多个副本
*分布式数据库中各局部数据库应满足集中式数据库的一致性、可串行性和可恢复性。除此以外还应保证数据库的全局一致性、并行操作的可串行性和系统的全局可恢复性。
3.分片的正确性判据:若R={R1,R2,…,Rn},满足:
●完整性:如果a∈R,则必有a∈Ri,i=1,2,…,n
●可重构性:R=∪Ri(水平分片),或R=∞Ri(垂直分片)
●不可相交性:Ri∩Rj=空集,i≠j,i,j=1,2,…,n(水平分片)
Ri∩Rj=主键属性,i≠j,i,j=1,2,…,n(垂直分片)
No.2:
1. create View v(name) as
select name from proj where pname = “CAD”
2. create View v(name) as
select name from proj1
No.3:
1.
Student1=SL dno=1 Student
Student2=SL dno=2 Student
Student3=SL dno=3 Student
*完整性:
∵{dno=1}∈{dno={1,2,3}},{dno=2}∈{dno={1,2,3}},{dno=3}∈{dno={1,2,3}}
∴Student中有且只有{dno=1},{dno=2}和{dno=3}三个元素,满足完备性。
*可重构性:
∵{dno={1,2,3}}={dno=1}∪{dno=2}∪{dno=3}
∴满足可重构性。
*不可相交性:
∵{dno=1}∩{dno=2}={dno=1}∩{dno=3}={dno=2}∩{dno=3}=空集
∴满足不可相交性。
No.4
1.(a)
LEVEL 1: read(terminal,$sno)
Select sname, age, dno, type into $sname, $age, $dno, $type from Student
where sno=$sno
write(terminal, $sname, $age, $dno, $type)
LEVEL2: read(terminal,$sno)
Select sname, age, dno, type into $sname, $age, $dno, $type from Student1
where sno=$sno
if not #FOUND then
Select sname, age, dno, type into $sname, $age, $dno, $type from Student2
where sno=$sno
write(terminal, $sname, $age, $dno, $type)
LEVEL3:read(terminal, $sno)
Select sname, age, dno, type into $sname, $age, $dno, $type
from Student1 at site1
where sno=$sno
if not #FOUND then
Select sname, age, dno, type into $sname, $age, $dno, $type
from Student1 at site2
where sno=$sno
if not #FOUND then
Select sname, age, dno, type into $sname, $age, $dno, $type
from Student2 at site3
where sno=$sno
if not #FOUND then
Select sname, age, dno, type into $sname, $age, $dno, $type
from Student2 at site4
where sno=$sno
write(terminal, $sname, $age, $dno, $type)
1.(b)
LEVEL 1:Update Student
Set dno=2 Where sno=060138
LEVEL 2: Select sname into $SNAME from student1Where sno=060138
If #FOUND then
Update student1
Set dno=2 Where sno=060138
Else
Update student2
Set dno=2 Where sno=060138
LEVEL 3: Select sname into $SNAME from student1 at site1 Where sno=060138
If #FOUND then
Update student1 at site1
Set dno=2 Where sno=060138
Else
Select sname into $SNAME from student1 at site2 Where sno=060138 If #FOUND then
Update student1 at site2
Set dno=2 Where sno=060138
Else
Select sname into $SNAME from student2 at site3 Where sno=060138 If #FOUND then
Update studen2 at site3
Set dno=2 Where sno=060138
Else
Select sname into $SNAME from student2 at site4 Where sno=060138
2.
分片原则:完备性:P1 v P2 =true;不相交性:P1=!P2
这两个断言可能不满足上述原则,因为不能保证职位就只有manager和programmer,所以修改为P1:title=“manager”P2:title≠“manager”。
No.5:
Emp1
Emp2 pay1
Emp3 pay2
Emp4
可采用半连接方式进行查询优化,减少站之间的数据输出量,但同时要增加通信次数和本地处理时间。