为了集成海量的、异构的、多形态的数据,首先要将它们的描述统一起来,这就引出了对集成数据的元数据描述和管理的要求。事实上,人们对元数据的理解和认识还存在不少争议,迄今尚未形成真正统一的元数据定义。与数据字典不同,数据仓库主要是将元数据进行分析处理。2)元数据分类元数据广泛存在的多形态导致到目前还没有形成一个统一的分类标准。......
2025-09-30
查找问题(lookup problem)是P2P系统的一个重要问题。例如:某个节点A想在分布式系统中存放一个数据项D,D可能是一个小数据项,是某个大数据内容的位置或坐标数据,如A的当前状态或当前IP地址。那么,当节点B希望检索数据项D会怎样呢?这时,会出现以下问题。
●A向哪里存放数据项D?
●其他节点如何发现数据项D的位置?
●分布式系统如何实现可伸缩性和高效性?
对此,有三种基本策略可用,它们是中心服务器(central server)、泛洪搜索(flooding search)和分布式哈希表(distributed Hash table)。
1.中心服务器
中心服务器就是第一代P2P系统,如Napster使用的策略。其思想是,在一个中心服务器里存放数据项的当前位置。所以,查找问题就变成询问中心服务器。其优点是,搜索复杂性为O(1),即只要知道中心服务器就可。此外,模糊查询和复杂查询也是可能的。其缺点是,中心服务器变成整个系统风险最大的短板,一旦出现问题,整个系统就瘫痪。
2.泛洪搜索(https://www.chuimin.cn)
泛洪搜索不设中心服务器,节点上存放数据项内容,而关于数据项位置的显式信息不存放在其他节点上。要检索一个数据项D,唯一的办法是问大家:谁拥有这个数据项。这种泛洪蔓延式的搜索就称为泛洪搜索。一旦节点接收到查询,就会将消息泛洪般传递给其他节点,直至超过指定的跳数。一个基本假设是数据内容在网络里有多个副本,因此可以在少量跳数里被找到。
3.分布式哈希表
分布式哈希表是一种分布索引技术。中心服务器和泛洪搜索的缺点很明显,因此提出了分布索引技术,即分布式哈希表方法。P2P系统里,这样的系统称为结构化P2P系统。数据的定位取决于当前的DHT状态。分布式哈希表提供数据在节点上分布的全局视图。
三种策略中,分布式哈希表优势明显,最吸引人。
表16.1是中心服务器、泛洪搜索和分布式哈希表三者的比较。
表16.1 中心服务器、泛洪搜索和分布式哈希表三者的比较
相关文章
为了集成海量的、异构的、多形态的数据,首先要将它们的描述统一起来,这就引出了对集成数据的元数据描述和管理的要求。事实上,人们对元数据的理解和认识还存在不少争议,迄今尚未形成真正统一的元数据定义。与数据字典不同,数据仓库主要是将元数据进行分析处理。2)元数据分类元数据广泛存在的多形态导致到目前还没有形成一个统一的分类标准。......
2025-09-30
SDD-1采用一种全局式的目录体系结构,它的系统目录是作为逻辑上一致的、单一的表或关系来处理的。为了提高性能,SDD-1允许局部节点暂存远程数据的目录登记项的拷贝,并要求保持它们的最新版本。该系统将目录划分为长目录和短目录。SUNDDB采用了类似R*的分布式目录体系结构,并进行了改进和修改。WDDBS-32是武汉大学设计和实现的分布式数据库管理系统。......
2025-09-30
事务和事务管理是数据库系统中的两个重要概念。图8.1事务模型图8.1中,事务T将数据库从一致状态转换成另一个一致状态,事务执行期间,数据库可能临时处于不一致状态。事务管理就是这样一种机制,它负责让数据库始终保持一个一致状态,即便是并发存取或发生故障。例8.1中有一个假设,即事务总是会按目的终止。如果事务成功完成,我们称为事务提交。事务夭折的原因多种多样。......
2025-09-30
瞬时对象标识的实现与所使用的程序设计语言有关。对于永久对象标识,可以是物理标识也可以是逻辑标识。注意,选定对象的大小也很重要,使用小对象,导致对象标识数量大,可能会使得OID表十分大。所以,对象标识管理与对象存储技术密切相关。在对象存取期间,如果LOID里的服务器标识部分不直接用在对象定位标示上,则对象标识符起的是纯LOID的作用。在磁盘上通常采用对象标识符作为指针。......
2025-09-30
Oracle公司的OPS环境比一般的(单实例)Oracle环境复杂得多。不同结构下的OPS的实施略有不同。图14.23OPS体系结构为了利用这些特性,需要专业人员合适的设计以及恰当的手工配置。下面对有些关键问题进行简单讨论,讨论中会涉及一些Oracle系统专用的术语,读者可参阅Oracle公司的相关文档。DLM与Oracle进程一起工作并相互通信。DLM相关的初始化参数在每个实例的SGA[12]中分配必要的结构以处理消息机制、封锁与实例相关的Cache管理,这样就为各种Oracle进程操纵提供了基础。......
2025-09-30
Web Service是一种跨平台、跨语言的规范,用于不同的平台,不同语言开发的应用之间的交互。但是,Web Service定义得更抽象,并不关心特定的实现协议。图12.13Web Service的技术基础●通过一种描述,包括允许的输入/输出消息最小化,以及可能的关于服务功能和数据含义的语义标注。Web Service显式地描述程序如何工作。图12.14例程调用与Web Service的不同如图12.14左面所示,在一个大的代码体里,子例程像宏一样被指向和使用。......
2025-09-30
数据分片是分布式数据库特有的现象,后面章节会详细讨论。典型的数据分片有数据水平分片、数据垂直分片和数据混合分片。完整性是指分片不应丢失数据,即一个关系的所有数据都应有自己的归属,总会落在一个数据片里。可重构性是指数据分片后能重组成原形。不相交性是希望数据片的归属是唯一的。图2.11数据分片示意图下面讨论主要的数据分片形态。......
2025-09-30
从而,死锁是分布式数据库管理系统面临的严肃问题。要采取措施,先要分析是否出现死锁,通常称为死锁检测。等待图是帮助监测的一个有用工具。WFG是一个有向图,表示事务间的等待关系。图9.9是例9.7的WFG。WFG中有环出现就意味着有死锁存在。在分布式系统中,WFG的形式复杂得多,因为两个参与死锁的条件可能出现在不同的节点上,我们把它称为全局死锁。图9.9等待图WFG发现死锁后,就要设法打破死锁。......
2025-09-30
相关推荐