一种异构数据库的解决方案.doc
《一种异构数据库的解决方案.doc》由会员分享,可在线阅读,更多相关《一种异构数据库的解决方案.doc(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、(注意要用(注意要用 WORD 2003!)!)发发表的表的杂杂志:志愿一、志愿二、志愿三志:志愿一、志愿二、志愿三一种异构数据一种异构数据库协库协同的解决方案同的解决方案作者姓名1单位 邮编摘要:企业和部门迫切需要整和信息资源,联合异构数据库,解决异构数据库的协同,成为一个很有意义的研究课题。提出一种异构数据库协调的解决方案,该方案吸纳了数据库元数据、中间件、LDAP 目录服务等思想。它采用 CSCW 体系结构中的联邦结构,对应用中输入的要求,在通信处理器的支持下,由协调控制器调用数据库元数据目录服务,协同查询处理、事务管理、完整性约束模块,访问底层数据库,较好地屏蔽了异构性,其中协调控制器
2、以基于 Agent 的三层协作模型来实现,数据转换可以采用统一的数据转换格式 XML 文档,工作方式为多线程。关关键词键词:异构数据:异构数据库库 CSCW 中中间间件件 元数据元数据1 引言引言随着计算机技术的不断发展,大多数的企业和部门部署了各式各样的异构的数据库系统,这些数据 库在历史上发挥了很大的作用。今天人们对数据处理和信息系统的要求越来越高,过去各自为营的异构 数据库所形成的“信息孤岛” ,已带来很多不便。企业和部门迫切需要整和信息资源,联合异构数据库。 解决异构数据库的协同,成为一个很有意义的研究课题。2 基于基于 Agent 的三的三层协层协作模型作模型实现协调实现协调控制器控
3、制器解决异构数据库问题,可以采用 CSCW 的联邦结构。当应用需要访问某一数据库时,首先向协调控 制器发出请求,不直接同所要访问的数据库发生作用。协调控制器负责各数据库之间的联系与消息传输。 它是一个特殊的主体,是各数据库的神经中枢,负责协同数据库间的消息转换、任务的规划、分解和管 理。 在计算机支持的环境中(CS) ,一个群体协同工作完成一项共同的任务(CW)异构数据库协同, 是一个复杂的过程,可模仿人们协同工作的方式。比较可行的方法是,用对单一数据库操作的任务,作 为异构数据库协同共作的基本运行单位与控制单位。若干任务采用联邦结构加以协调,以便克服冲突, 达到共同完成协同工作的目的。任务可
4、分为若干子任务,即应用任务分层的思想。同时任务还有其任务 上下文。 采用一种基于 Agent 的三层协作模型8来实现协调控制器,它符合现实世界人们协同工作的特点, 是一种模型运行控制机制,可以描述协作机制中的各种协同工作,以及支持各种协同方式。 将视协调控制器中参与 CSCW 协同工作处理过程的自主实体为 Agent, 将 CSCW 协同工作过程看 作是若干 Agent 相互协作的活动序列,通过描述 Agent 的动作、行为及其相互关系来描述 CSCW 应用 系统的协作过程,这样更加符合现实世界中的人们的协同工作的特点。 以基于 Agent 的协作模型来实现协调控制器,其核心是组件化任务的管理
5、与监控,实现异构数据库 系统各成员间组件化任务的协作,具有任务指派、任务确认、任务查询与结果返回等功能。在整个协作 模型中,所有 Agent 按其所提供的服务类型可分为三层(见图 1 ): (1)任务管理与监控层。任务管理与监控 Agent,相当于一个协同任务引擎,它根据一定的规则把 异构数据库系统的协同过程模型中的共同任务划分为多个关联的子任务,并建立起它们之间的逻辑和时 序关系,同时它要把各个子任务分门别类地分配给各个任务协作 Agent 去执行。 任务管理与监控 Agent 要协调、监控各个任务协作 Agent 的运行,如果运行中出错,还要有相应的1 蔡斌杰,男,蔡斌杰,男,1968.5
6、.30-,讲师,硕士学位,浙江长江职业技术学院,研究方向:计算机软件工程(如下格式进行修改),讲师,硕士学位,浙江长江职业技术学院,研究方向:计算机软件工程(如下格式进行修改)故障恢复机制,从而保证整个 CSCW 系统的正常运行. 任务管理与监控 Agent 要有以下知识:协同任务域 的模式;完成整个协同任务的知识,如把任务分解为各个任务步的知识、任务步的排序等; 为了完成整 个任务,它要包含协调与管理的各个任务协作代理和信息存取代理的知识;故障检测与处理的知识。 (2)任务协作层 任务协作层中,每个任务协作 Agent 完成某一项特定的任务, 它们之间相互协 作,从而解决了 CSCW 系统中
7、的冲突或集成信息到系统中。当任务协作 Agent 接收到管理与监控 Agent 传来的一个指定任务时,它根据自身包含的知识库中的规则把指定任务分解为一些子任务, 并指派其它 相应的任务协作 Agent 辅助该协作 Agent 完成。在任务执行过程中,任务协作 Agent 向信息存取 Agent 请求执行中所需的信息。 任务协作 Agent 要包含以下知识: 任务所属的领域、如何完成任务的知识、如何收集任务中用到的 信息、哪些任务协作 Agent 和信息存取 Agent 与之相协作、与其它 Agent 协作的协议以及解决冲突和信息 融合的策略等。 (3)信息存取层.信息存取层中 Agent 的行
8、为是由上层任务协作 Agent 启动的,它们相互协作为上 层任务协作 Agent 提供所请求的信息。而信息来自许多功能各异的数据。这里的数据是一个广义的概念, 它既包括普通信息的数据,也包括完成一定功能的软件组件数据。信息存取 Agent 需要包含以下知识: 它所与之关联的数据库的信息、如何访问数据库、如何解决冲突和信息融合的策略以及与其它 Agent 协 作的协议等。任务管理与监控Agent任务协作 Agent 1任务协作 Agent 2任务协作 Agent n信息存取 Agent 1信息存取 Agent 1信息存取 Agent n图 1 基于 Agent 的三层协作模型3 异构数据异构数据
9、库库的一种解决方案的一种解决方案首先构建一个数据库元数据目录服务,有了它应用才可能以统一访问接口透明地访问不同数据库的 资源。这个服务可采用以下方法实现:先将各个数据库的位置和元数据信息注册到 LDAP 目录中,这样, 用户通过目录服务便可查询到所需要的数据库资源位置和元数据信息,然后根据需要去访问各个数据库。 因为主流数据库都属于关系型,结构上是同构的,所以元数据信息大体上相似,这为以统一方式获取和 保存元数据提供了可能。图 2 表示了执行过程。协调控制器数据库元数据目录服务其它模块数据库1数据库2数据库34 调用 控制1 注册元数据信息2 查询元数据信息3 返回记录5 5 访问数据库图 2
10、 执行过程本解决方案采用 CSCW 体系结构中的联邦结构,对应用(可视化界面)中输入的要求,在通信处理 器的支持下,由协调控制器调用数据库元数据目录服务,协同查询处理、事务管理、完整性约束模块, 访问底层数据库,较好地屏蔽了异构性,其中协调控制器以基于 Agent 的三层协作模型来实现。中间的 数据转换可以采用统一的数据转换格式 XML。解决方案的结构如图 3 所示:应用(可视化界面)协调控制器数据库元数据目录服务查询处理事务管理完整性约束通信处理器联邦结构的CSCW数据库中间件OracleSQL ServerSybase图 4 方案结构框图 工作过程如下:用户在可视化界面输入操作要求,应用程
11、序将其提交至联邦结构的 CSCW 数据库中 间件,中间件的协调控制器在通信处理器的支持下,调用数据库元数据目录服务,协同查询处理、事务 管理、完整性约束等模块,向不同的数据库发出操作指令,将取得的结果返回给应用。3.1 关于数据关于数据库库元数据信息需注意的元数据信息需注意的问题问题为了保证用户查询到的是最新的数据库元数据,在数据库和目录之间必须有一个实时动态的注册过 程,负责将元数据的注册更新。用户也要遵循 LDAP 协议查询目录服务。这对用户来说,要求比较高。 我们可以知道每个数据库在目录结构中是一个节点,它可以有多个属性(attribute)来描述其信息, 如名称、描述、创建时间、管理员
12、、DBMS、类别和版本等等,另外还需要有操作系统信息和访问参数信 息。这些在 LDAP 中用文件的形式定义下来,然后归类成一些“对象类(Object Class) ” ,每个“对象类 (Object Class) ”代表一类属性的集合。每个节点都有一些特定的属性,这些就是所谓的数据库元数据。 这种树状结构对于查询来说是比较复杂的,有一些需注意的问题,比如: (1)如果要查询某个数据库的 DBMS 信息,需先得到目录的基本结构,再确定查找的范围,然后利 用 LDAP 的搜索命令来查找。这需要一个过程。 (2)如果想将数据库中的某些动态信息,如当前某个数据库的总数据量大小,存入 LDAP,应自动
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 一种 数据库 解决方案
限制150内