论文部分内容阅读
普适计算、移动计算等新一代网络计算是以大规模、分散控制、动态性、自治性和松耦合为主要特征的大型分布式计算,发布/订阅系统具有松耦合、匿名、多对多通信和可扩展的特点,已成为支持新一代网络计算的重要基础中间件平台。有状态发布/订阅系统是在普通发布/订阅系统基础上,实现了复合事件检测的发布/订阅系统。它不仅支持对单个事件的订阅,也支持对复合事件的订阅,使得各发布者所发布的一系列事件所组成的事件序列满足某一种条件时通知客户,这样可以高效的处理复杂的事件,从而改善系统的性能,具有重要的应用价值与研究意义。论文针对现有有状态发布/订阅系统数据模型的表达能力、匹配算法性能等方面存在的问题,结合国家863课题、国家自然科学基金课题,研究有状态发布/订阅系统的数据模型与匹配算法。论文第一部分论述了发布/订阅系统的研究背景和研究意义。在阐述发布/订阅系统概念模型的基础上,介绍数据模型、匹配算法、系统拓扑结构和路由算法等关键技术的国内外研究现状,分析有状态发布/订阅系统的挑战与研究热点。第二部分提出了一种支持多种复合事件操作的有状态发布/订阅系统数据模型。在分析传统的复合事件模型基础上,提出支持多种复合事件操作的数据模型,并从复合事件模型和订阅模型两个方面介绍了有状态发布/订阅系统的数据模型。复合事件模型包括复合事件模式和时间模型,复合事件模式描述多个单一事件或者复合事件的触发关系,时间模型描述多个事件之间时间序列上的关系。订阅模型关注的是订阅者想要得到的数据,体现了系统的表达能力。订阅模型包括订阅语言和观察模型。订阅语言用于描述订阅者感兴趣的复合事件,本文提出了一种类似SQL的查询语言,该语言支持多种复合事件订阅操作,并用形式化语言对各种订阅操作进行了描述。观察模型用于描述感兴趣事件的检测机制,本文提出了一种基于扩展的非确定型有限自动机的复合事件检测机制。第三部分提出了利用谓词推导关系的快速匹配算法。高效的匹配算法是调和系统丰富表达能力和可扩展性矛盾的关键。论文先介绍了整个匹配过程,明晰相关挑战和难点。然后,提出一种流水线事件处理过程,以多线程的方式使匹配过程中的事件扫描、过滤操作、事件匹配、重新发布或者通知订阅者流水处理,从宏观上改进了复合事件检测算法。接下来,从微观上充分挖掘谓词间的推导关系,提出了关系谓词匹配算法。该算法通过把订阅中的谓词组织成一种特殊的数据结构,称为谓词关系表,来提高匹配效率。根据谓词判断顺序对谓词推导作用的影响,提出了有序谓词匹配算法,可利用历史数据规律,预测将来的数据,把订阅中的谓词组织成有序谓词关系表,进一步提高了匹配效率。最后,对关系谓词匹配算法和有序谓词匹配算法进行了实验测试,并与一种基础的算法进行比较。结果表明,有序谓词匹配算法体现出了很好的事件处理效率,很好的改善了有状态发布/订阅系统性能。第四部分提出一种可扩展和可配置的有状态发布/订阅系统体系结构。该原型系统主要包括匹配管理器、订阅管理器、事件管理器和发布管理器。通过对各个模块的扩展支持,以及配置管理和元服务管理的设计,使得系统可扩展和可配置。最后,介绍了有状态发布/订阅原型系统。