1.分布式数据库有哪些体系结构及含义分布式数据库分布式数据库系统中的数据是分布存放在计算机网络的不同场地的计算机中,每一场地都有自治处理(独立处理)能力并能完成局部应用。当今流行的数据库系统的体系结构典型的是客户端/服务器模式,客户端为用户提供数据操作接口,服务器为用户提供数据处理功能,分布式数据库系统从功能层次可以划分为C/S结构,若从场地能力划分,又类似于对等性结构,因为个节点功能平等。1)基于客户端/服务器端(C/S)的体系结构C/S结构的基本原则是将计算机应用任务分解成多个子任务,由多台计算机分工完成,即“功能分布”原则。客户机完成数据处理、数据表示、用户接口等功能。服务器完成DBMS的核心功能。应用处理器(AP):用于完成分布数据处理的软件,如:处理访问多个场地的请求,查询全局字典中分布信息等。数据处理器(DP):负责进行数据管理的软件,类似于一个集中式数据库管理系统(DBMS)通信管理器(CM):负责为AP和DP在多个场地之间传送命令和数据。2)基于“中间件”的C/S结构传统的c/s结构是由全局事物管理统一协调和调度事物的执行,属于紧耦模式,导致系统复杂度高,资源利用率低,为此目前的分布式数据库系统均采用基于“中间件”的C/S结构,由中间件实现桥接C/S的功能,使C/S之间具有松散的耦合模式2.分布式数据库系统,有几类:多数据库集成系统,对等数据库系统。。。。。描述一下多数据库系统(MDB):MDBS是在己经存在的数据库系统(称为局部数据库系统:LDBs)之上为用户提供一个统一的存取数据的环境。是指若干相关数据库的集合。各个数据库可以存在同一场地,也可分布多个场地。在多数据库系统中,不是所有子事务的成功或失败都影响全局事务的执行结果,多数据库事务中的部分结果也可被其它事务引用。多数据库系统中,需要松弛型事务(relaxedtransaction);事务是长事务(longtransaction,目标是要实现对多副本的全局数据的并发操作,同时,要保证数据的一致性和局部场地的自治性。对等型数据库系统(又称P2P模型)是一种新型的体系结构模型,面向大范围的多数据资源点的松散耦合。特点:每个点均可贡献数据,系统资源具有丰富性、多样性;可直接访问数据源中的数据资源,即时得到最新鲜的数据,不同于如数据仓库等集中的数据资源仓;采用自组织原则,具有健壮性;每个点可随时加入和退出,系统具有分散性、可扩展性;以Web上的资源为Peer点,系统部署简单,不需要复杂的框架部署实现。分布式数据库系统的分类很多。为全面、系统地对分布式数据库系统进行分类,采用分布式数据库的三个特性(分布性、异构性、自治性)组成的三维空间图来描述分布式数据库的类型。分布性是指系统的各组成单元是否位于同一场地上。分布式数据库系统是物理上分散、逻辑上统一的系统,即具有分布性。而集中式数据库系统集中在一个场地上,所以不具有分布性。异构性是指系统的各组成单元是否相同,不同为异构,相同为同构。自治性是指每个场地的独立自主能力。自治性通常由设计自治性、通讯自治性和执行自治性三方面来描述。根据系统的自治性,可分为集中式系统、联邦式系统(FederatedDB)和多数据库系统(MultiDB)。3.分片的理解,三种分片方式的特点分布式数据库系统数据分片:分布式数据库中的数据可被分割和复制在网络场地的各个物理数据库中。一般数据存放的单位不是关系而是片段,一个片段是关系的一部分。分片的目的:实现对全局关系的逻辑划分,以用户需求为目标,尽可能的提高系统的可用性,适应分布式的事务处理数据查询。分片的方式主要有下面三种:(1)水平分片:按一定的条件把全局关系的所有元组划分成若干不相交的子集,每个子集为关系的一个片段。(2)垂直分片:把一个全局关系的属性集分成若干子集,并在这些子集上做投影运算,每个投影为垂直分片。(3)混合型分片在定义各种分片时必须遵守的条件:(1)完备性条件。不允许发生属于全局关系的某个数据不属于任何一个片段。(2)重构条件。必须确保能够由各个片段重建全局关系。(3)不相交条件。要求一个全局关系被划分后所得的各个数据片段互相不重叠。4.分布式数据库事务管理有哪些问题与传统数据库系统有什么区别:事物本身的特点,两段式含义,基本过程。事务是对数据库的一个操作序列,是保证数据库正确的最小运行单位。事务具有四个特性:原子性、一致性、隔离性和耐久性。1、原子性:事务的原子性主要表现在:事务所包含的操作要么全部完成,要么什么也没做。也就是说,事务的操纵序列或者完全应用到数据库中或者完全不影响数据库。2、一致性。事务的执行结果必须是使数据库从一种状态变化到另一种一致性状态,而不会停留在某种不一致的中间状态上,也就是说,无论是事务执行前还是执行后,数据库的状态均为一致性的状态。3、隔离性。一个事务的执行的执行既不能被其他事务所干扰,同时也不能干扰其他事务。4、耐久性。当一个事务提交后,系统保证该事务的结果不会因以后的故障而丢失。也就是说,事务一旦提交,它对数据的更改将是永久性的。与集中式数据库管理系统的事务一样,分布式事务同样由一组操作序列组成,只是二者的执行方式有所不同,前者的操作只集中在一个场地上执行,而后者的操作则分布在多个场地上执行。5.并发控制解决的问题,大致用什么方法并发控制是事务管理的基本任务之一,它的主要目的是保证分布式数据库中数据的一致性。当分布式事务并发执行时,并发控制既要实现分布式事务的可串行性,又要保持事务具有良好的并发度,以保证系统具有良好的性能。控制方法:1、基于锁的并发控制方法。2、基于时间戳的并发控制算法。与基于锁的方法不同,基于时间戳的方法并不是通过互斥维护可串行化来实现事务的并发控制,而是选择具有优先级的串行顺序执行事务。为了建立这种顺序,事务管理器为每个事务在其产生时都设置时间戳。基于时间戳排序的并发控制方法主要有基本的时间戳算法,保守的时间戳算法和多版本的时间戳算法3、乐观的并发控制算法。悲观算法假设冲突经常发生,而乐观算法等到写阶段开始时,才进行冲突验证,也就是说将验证延迟到执行写操作之前。因此,提交给乐观调度器的操作永远也不会被延迟。每个事务的读、计算和写操作可以自由处理,不需要更新实际的数据库。