[发明专利]一种多核架构下基于语义的发布订阅系统中并行匹配方法无效
申请号: | 200910153370.8 | 申请日: | 2009-10-19 |
公开(公告)号: | CN101667202A | 公开(公告)日: | 2010-03-10 |
发明(设计)人: | 尹建伟;苏勇;吴朝晖;吴健;李莹;邓水光 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;H04L29/08 |
代理公司: | 杭州裕阳专利事务所(普通合伙) | 代理人: | 江助菊 |
地址: | 310027浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多核 架构 基于 语义 发布 订阅 系统 并行 匹配 方法 | ||
技术领域
本发明涉及一种发布订阅系统中的并行匹配算法,更具体地,涉及一种多核架构下基于语义的发布订阅系统中高效的并行匹配算法。
背景技术
随着Internet的快速普及,极大地改变了分布式系统的规模,出现了基于Internet的大规模分布式计算的新型计算环境。基于Internet的分布式系统包含上万个分布于世界各地的参与者,在系统的整个生命周期中,参与者的位置和行为都可能会改变。因此Internet计算既有传统的分布式计算的异构性等共同特点,也有大规模、分散控制、动态性、松耦合等特点。而发布订阅系统(publish/subscribe系统,简称pub/sub)能够很好的满足上述要求,因而受到越来越多的关注。
Pub/sub系统的匹配问题的本质在于,当到达一个事件以后,要能快速地找到所有与之匹配的订阅条件。从这一点来说,pub/sub系统与数据库相比,数据和查询(订阅)条件的角色正好颠倒过来了。在数据库系统中,大量的数据被保持并建立了索引,以便当用户发起一个查询条件时,能够快速到找到所需要的数据,而在pub/sub系统中,大量的订阅条件被保存并建立索引,以便当到达一个事件时,能够快速地找到与之匹配的订阅条件。
基于语义的发布订阅系统更加灵活,不必受系统预先定义的主题的限制,但是也使系统的设计复杂化,一个核心问题就是如何实现大量事件与大量订阅之间基于语义的高速匹配,即匹配算法。在基于语义的发布订阅系统中,事件的匹配是保证事件通知的高效性和正确性的关键,对于事件匹配的研究是基于语义的发布订阅系统的一个重要方面。
在设计发布订阅系统的匹配算法时,追求的目标有以下三个:
(1)匹配的时间效率
当一个事件发布后,系统需要多长的时间才能知道能找出满足所有条件的所有订阅。事件达到后,应在最短时间内将该事件能匹配成功的订阅找出来,通知相应的订阅。
(2)匹配的空间效率
为实现事件与订阅的高效匹配,用于维护订阅索引结构以及订阅本身所需要的空间情况。在大规模的发布/订阅中,订阅的数量非常大,不可能在节点的内存中维护全部订阅,特别是对于具有上百万个订阅的节点。因此通常只保持索引结构和部分订阅在内存中,而把其他订阅保存到磁盘中。
(3)订阅维护的效率
当一个新的客户加入订阅或者一个已有的客户取消订阅时,系统需要对订阅的索引结构进行更新,以体现订阅条件的变化。订阅维护的效率是指系统对订阅索引结构进行更新时所需要的开销情况,包括时间的开销和空间的损耗。就匹配算法而言,订阅维护的时间效率则强调节点插入订阅和删除订阅所消耗的时间长短。而在单个节点上插入和删除一个订阅的效率主要取决于订阅索引结构的复杂度。由于一个pub/sub系统中,事件的发布的频率要远远高于客户增加和取消的订阅频率,所以这是一个次要的设计目标。
发明内容
发布订阅系统的匹配算法的本质就是:当一个事件到达后,在最快的时间内,准确地找出事件满足的约束条件的所有订阅。一种最简单的方法就是将事件与每个订阅逐一比较,这是一种最原始最笨的解决办法。然而在大规模分布式Pub/Sub系统中,发布者和订阅者的数量庞大,系统中的订阅的数量数以百万计,与此同时,发布者发布的事件的频率也很频繁。因此利用订阅条件之间的重复性,减少事件与订阅直接的匹配次数。发布者发布的事件是频繁的,系统中又保存了大量的订阅,所以首先应该将所有订阅条件组织成一个特定的数据结构,这个数据结构要充分考虑到订阅之间的各种关系(如重复、包含等),这个数据结构称为订阅的索引。
发布者以RDF/XML语法表示事件,系统把事件转化为RDF事件图,并提交到事件匹配器,而订阅又被保存为订阅图模式。
本发明包括以下几个部分:
(1)订阅合并
当一个新的订阅添加进来时,系统需要将它整合到订阅总图中。节点以订阅总图的方式保存订阅。
订阅的加入分为两步完成:
a.将订阅按单个订阅图的结构保存到磁盘;
b.订阅合并到订阅总图数据结构中并统计订阅的约束条件总数。在多核架构下,将单个订阅的每个属性信息随机分配到一个处理单元上,该处理单元将这个属性合并到订阅总图中,同时修改该订阅到约束条件数。对订阅总图结构的修改和对约束条件数的修改都需要在修改前加锁,修改后解锁。
(2)订阅退订
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910153370.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:机车车辆用轴温传感器及其制造方法
- 下一篇:锡球平整度测试治具