JDBC 介体性能注意事项和局限性

使用此提示帮助您来确定 JDBC 数据介体服务是否满足您的应用程序服务环境要求。

[IBM i]

使用 SDO 访问 DB2 UDB iSeries 版的驱动程序要求

因为 SDO JDBC 介体利用 JDBC 2.0 中的 ResultSetMetaData 接口,所以它必须使用完全符合该规范的 JDBC 提供程序。IBM® Developer Kit Java™ 版 JDBC 驱动程序(也称为 DB2® UDB iSeries 版本机驱动程序)和 IBM Toolbox Java 版 JDBC 驱动程序都满足到 DB2 UDB iSeries 版的 JDBC 访问的该条件。但是,由于性能原因,这两个驱动程序都没有返回介体所需的所有信息的缺省设置。必须对与每个驱动程序相应的 JDBC 提供程序或数据源设置连接属性,才能使它返回全部 ResultSetMetaData 数据集。
使用的属性随驱动程序实现获取数据库连接的方式的不同而改变。
  • 如果驱动程序通过 DriverManager 类获取连接,请将 JDBC 提供程序 URL 属性 extended metadata 设置为 true:extended metadata=true。在此方案中,IBM Developer Kit Java 版和 IBM Toolbox Java 版 JDBC 驱动程序都要求 JDBC 提供程序对象上相同的设置。
  • 如果应用程序通过数据源获取连接,请对数据源设置另一个定制属性,这取决于使用的驱动程序:
    • 对于 IBM Toolbox Java 版 JDBC 驱动程序,请将定制属性 extendedMetaData 设置为 true。
    • 对于 IBM Developer Kit Java 版 JDBC 驱动程序,请将定制属性 returnExtendedMetaData 设置为 true。

各种数据库局限性

  • V12.5.1 前的 Sybase 不支持在“from”子句中直接插入查询,因此它不支持具有过滤器的多表 DataGraph。要使用 WebSphere® Application Server 中的服务数据对象,请使用 Sybase V12.5.1。
  • Informix® Dynamic Server 不支持多表图表所需的附加选择。 使用 Informix Extended Parallel Server。
  • Oracle 8i 不支持 ANSI 连接语法。在多表的情况下,介体需要 Oracle 10g 或更高版本。

一般性能建议

  • 评估这些技术是否很好地适合您的目标项目。通常,最好选择精读并且需要断开连接的数据的项目。
  • 限制元数据中表的数量。表的数量为 1 或 2 是最好的,因为当图有多个分支时,相对于过滤器的关系变得不明确。
  • 尽可能频繁地处理小的数据集以避免在应用程序中使用过多内存。您可以通过指定元数据对象中的过滤器或者通过使用页面调度来限制返回给 SDO 的数据量。
  • 对于 Web 应用程序,如果 Datagraph 不是太大并且以后要重新使用,请将它存储在用户会话中。

指示主题类型的图标 参考主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rdat_sdolimit
文件名:rdat_sdolimit.html