论文部分内容阅读
当今社会正处于一个信息膨胀的时代,股市行情、体育赛事、彩票、生产管理、公司经营、购物中心的促销活动……都包含了许许多多我们关注的信息。这些信息大多又是通过数据库来存储和管理的。每天随着新信息的产生,数据库中的数据都在不断地更新。而作为这些数据库的用户,希望自己所关注的数据发生变化时,能得到及时的通知,以免导致不必要的经济损失;或者定时地得知数据库中有关数据的状态,以便及时调整经营策略或管理方案。 数据库通知服务就是一个能满足以上需求的应用程序。目前,Sybase、Oracle、Microsoft、IBM等数据库管理系统提供商都推出了开发数据库通知服务应用程序的平台,但是还存在一些不足。首先,各类提供商通常提供的是相互独立的服务,这些通知服务开发平台只能基于特定类型的数据库系统,对其他类型的数据库系统不能支持。然而,目前许多企业还在使用不同种类数据库系统,在这些数据库系统之间又需要关联地进行通知服务;其次在数据库通知服务应用程序生成过程中,大都采用SQL编码来表示用户的订阅,通过SQL查询将订阅与事件进行匹配,而在含有递归的查询中,SOL语言的表达能力有很大的局限。最后,使用SQL编码方式改动起来也非常麻烦。 数据库通知引擎是数据库通知服务的核心。本文结合上海市高等学校青年基金项目“基于Agent的异构数据集成和数据模式匹配原型系统的设计与实现”的一些研究成果,设计和实现了一种新型的数据库通知引擎原型系统。该系统是在Jbuilder 8.0开发平台上,完全采用Java语言编写。在实现过程中,取得了以下研究成果: (1) 提出了一种实现数据库通知服务的新思路。通过使用产生式规则代替SOL编码来表达用湖的数据库通知策略,用户非常容易理解和接受,修改起来也非常方便。使用规则还可以解决数据库中的递归查询和进行复杂的推理。 (2) 设计和实现了一个可视化的规则编辑器。规则编辑器具有一定的向导功能,使得用户定义规则更加方便。 (3) 定义和实现了规则引擎与数据库的接口,并把这个接口与规则引擎封装为数据库模式匹配引擎。选用Rete算法作为数据库模式匹配引擎的匹配算法。上海海事大学硕士学位论文(4)通过JDBC技术实现了异构数据库系统之间关联通知服务。(5)对数据库通知引擎系统进行了结构设计和模块定义,最后实现了一个原 型系统。原型系统可以通过短消息和电子邮件给用户发送通知。