WEB开发网
开发学院数据库DB2 在 WebSphere Federation Server V9.1 中异步执行... 阅读

在 WebSphere Federation Server V9.1 中异步执行联邦查询

 2009-12-24 00:00:00 来源:WEB开发网   
核心提示: 如果这个例子中的三个 SHIP 操作符都可以在同一时间开始,那么查询就可以在远程数据源上重叠执行,在 WebSphere Federation Server V9.1 中异步执行联邦查询(3),UNION 的所有分支都将并发执行,UNION 操作符从数据源取数据的过程仍然是串行化的,HASH、M

如果这个例子中的三个 SHIP 操作符都可以在同一时间开始,那么查询就可以在远程数据源上重叠执行,UNION 的所有分支都将并发执行。UNION 操作符从数据源取数据的过程仍然是串行化的,还是从 SHIP1 开始。假设取数据所需的时间非常短,那么远程操作的重叠可以将整个查询执行时间缩短到大约 Max(SHIP1, SHIP2, SHIP3) = Max(10,5,7) = 10 分钟。下面的图突出显示了这种处理方式的异步性质:


图 3. 显示查询异步执行的时间线
在 WebSphere Federation Server V9.1 中异步执行联邦查询

当 Websphere Federation Server 启用了异步方式时,它便可以在远程数据源上实现这种操作重叠,从而更充分地利用可用的资源。异步的最终目的是减少联邦查询的执行时间。请务必记住,只有远程操作是异步的 - UNION 操作符依然是每次只能处理一个远程操作返回的结果集。也就是说,在前面的例子中,与每个 SHIP 操作符相关的三个查询是在同一时间开始的,但是 UNION 只有等到已经检索完 SHIP 1 的全部结果集之后,才会开始使用 SHIP2 返回的行。异步所带来的优点在于,当接收完 SHIP1 的结果时,很可能 SHIP2 的结果集就已经准备好了,随时可以从远程数据源检索到联邦服务器。

在 WFS 中,远程数据源操作的异步执行并不限于 UNION 操作符的分支。HASH、MERGE SCAN 等连接操作符和(在某些情况下)NESTED LOOP 也可以通过同时执行连接操作符的内分支和外分支而从异步中获益。

考虑如下示例查询,该查询用于发现所有同时在美国和欧洲销售的美容产品的总销售量。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:WebSphere Federation Server

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接