基于WEB服务的异构数据库集成中间件

豆豆网   技术应用频道   2007年06月26日  【字号: 收藏本文

内容摘要:WEB服务(WEB SERVICE)是由W3C(WORLD WIDE WEB CONSORTIUM)组织发起和定义的,目前比较流行的定义为:WEB服务是一个可以用URI来标志的软件系统,它采用XML格式的信息来定义和描述对外的公共接口和绑定。WEB服务可被其它软件系统发现,并通过使用基于XML的消息借助IntelNet协议,依照WEB服务中定义描述的方式实现交互。

  查询结果重组模块收集本地子查询和非本地子查询的结果,这些结果以DataSet的形式存在的,然后合并为一个大的DataSet作为最终的结果。在返回结果给客户端时根据DataSet生成一个结果XML文件给客户端,完成整个查询流程。

  3.1.4安全控制模块

  中间件配置后加入到由其它中间件构成的数据共享网络,通过安全控制模快配置中间件在数据共享网络中共享自身的哪些数据信息,及数据共享到怎样的程度,网络中哪些中间件能够访问自身等等。

  3.1.5查询分解模块

  为实现查询的高效分解,我们为中间件定义了新的查询语法,如下:

  1> 用关键字DEFINE,以数据表为单位定义查询源数据单元,并以[]作为数据单元的分割符。

  例:DEFINE [server1.db1.table1=a] [server2.db2.table2=b]

  解释:中间件server1上的数据库db1中的数据表table1为变量a

  中间件server2上的数据库db2中的数据表table2为变量b

  2> 用关键字SELECT指点结果集单元,以[]作为单元分割符。

  例:SELECT[a.*][b.id].

  3> 用关键字FROM指定结果集来自的数据单元, 并以[]作为数据单元的分割符。

  例:FROM [a][b]

  4> 用关键字WHERE AND OR 指定查询条件, 并以[]作为条件单元的分割符。

  例:WHERE [a.id=b.id]AND[a.age>b.age]

  5> 用关键字ADDITION指定数据单元使用的属性/数据库函数/存储过程, 并以[]作为单元分割符。

  例:ADDITION [a.id=GROUP BY][b.age=ORDER BY DESC][a.age=DISTINCT]

  [a.age=MAX]

  含义:查询过程中以a.id进行分组;以b.age进行降序排列结果;结果中a.age唯一对a.age求和 等等。

  检查成功则开始分解。查询分解按照以下原则进行:

责编:豆豆技术应用

正在加载评论...