论文部分内容阅读
网络技术的快速发展使得分布式系统的规模不断扩大,对系统使用的通信模型提出了更高的要求。发布/订阅系统作为一种灵活的基于事件的通信范式,实现通信双方在时间、空间和同步上的完全解耦,满足大规模分布式系统的通信需求。发布/订阅系统已成功应用于多个领域,例如内容分发、信息过滤、电子商务和在线游戏等。在发布/订阅系统的变种中,基于内容的发布/订阅系统表达能力最强,可实现对信息的细粒度过滤,但事件匹配的复杂度较高。因此,事件匹配是基于内容的发布/订阅系统的研究热点和关键技术之一。大规模基于内容的发布/订阅系统对匹配算法的性能提出了更高的要求,主要表现在以下三个方面:第一,大规模发布/订阅系统需要维护的订阅非常多,并且订阅中通常包含多个约束条件,因此,与事件进行比较的订阅集合的规模非常大。第二,匹配事件时,大规模发布/订阅系统存在大量与事件相匹配的订阅,而现有大部分匹配算法的性能随着匹配订阅个数的增加而急剧下降。第三,大规模发布/订阅系统很难满足所有订阅者的服务质量要求,尤其在负载高峰时段。提供服务质量支持是解决过载问题的有效途径之一,可为具有高服务质量要求的订阅者提供有保证的事件传递服务。但现有的匹配算法在匹配事件时没有考虑订阅的优先级,没有提供服务质量支持。论文主要围绕以上三个方面的问题,研究提高大规模基于内容的发布/订阅系统事件匹配的效率。论文首先阐述了大规模发布/订阅系统中订阅集合的规模对匹配算法的影响,指出基于计数方法的匹配算法的性能随着订阅个数的增加而快速下降。针对存在的问题,论文设计了一个适用于大规模发布/订阅系统事件匹配的高效索引结构H-TREE。H-TREE的基本思想是通过缩小与事件匹配的订阅集合的规模来提高事件匹配的速度。H-TREE本质上是一个哈希表,由一定数量的桶组成。在建立索引时,H-TREE将相似订阅的标识存储在同一个桶中。在匹配事件时,H-TREE能够过滤掉大部分不匹配的订阅,只对具有较高匹配概率的订阅进行检查。为了评估H-TREE的性能,在一台配有8个2.4GHZ内核和32GB内存的DELL Power Edge T710服务器上进行了相关实验,实验结果表明,当订阅的个数和订阅中约束的个数都比较多时,H-TREE的匹配速度比同类算法快三个等级。H-TREE匹配算法的研究成果发表在IEEE Transactions on Parallel and Distributed Systems上。为了消除匹配订阅的个数对匹配算法性能的影响,论文提出了一个名为REIN的快速事件匹配算法。REIN采用反向搜索策略,通过查找并标识与事件不匹配的订阅来提高事件匹配的速度,而不是通过统计每个订阅中条件得到满足的约束的个数来确定订阅是否匹配。与现有的匹配方法相比,REIN具有多个优点。首先,REIN的性能随着匹配订阅个数的增加而提高。其次,REIN的性能不受约束值分布的影响。第三,REIN能够高效地实现订阅的更新(插入或删除)操作,非常适用于一些动态的环境。基于DELL Power Edge T710服务器所做的实验结果表明,当订阅的选择度比较高时,REIN的匹配速度平均比同类算法快一个级别以上。REIN匹配算法的研究成果发表在IEEE INFOCOM2014国际会议上。针对大规模发布/订阅系统存在的过载问题,论文提出了优先化事件匹配的思想。优先化事件匹配的目标是在事件匹配中提供服务质量支持,确保高优先级的匹配订阅比低优先级的匹配订阅更早地确定。与路由时提供的服务质量支持相结合,优先化事件匹配能够在基于内容的发布/订阅系统中提供全面的服务质量支持,突破事件传递路径中存在的服务质量支持的盲点。基于匹配算法REIN,论文实现了名为Pri-REIN的优先化事件匹配算法。实验结果表明,Pri-REIN能够在事件匹配中提供服务质量支持,实现了预定的设计目标。更重要的是,论文所提出的优先化事件匹配的思想可以广泛应用于云计算或复杂事件处理等系统的匹配算法中。基于DELL Power Edge T710服务器所做的实验结果表明,高优先级匹配订阅的确定时间比低优先级的提前30%左右。优先化事件匹配的研究成果已被ACM DEBS 2015国际会议录用。