简介
您听过这样一个故事:还有另一种新技术可望使 java 2 企业版(java 2 enterprise edition,j2ee)开发人员更轻松地工作 - 这个突破可以使开发工作减少 30%.40% 甚至 50%.提供该技术的新软件简化了复杂任务.提供该技术的新产品增强了您现有 java™ 集成开发平台与 web 应用程序服务器环境.我们也听过这个故事.我们是在同事们讨论 ibm 新的 db2® information integrator 时听到的,这个产品旨在提供数据的单点映像,这些数据驻留在不同平台上.以不同格式存储并可通过不同的应用程序编程接口(api)来访问.而我们只想知道:对于承担构建处理异构数据所需的 web 组件这个任务的 j2ee 程序员而言,这种技术可以完成什么.
在本系列文章中,我们将讨论我们构建的一系列 servlet,它们需要访问散布于多个数据源(在我们的例子中,是 db2.oracle 与 excel)上的数据.一组 servlet 使用了 db2 information integrator 来模拟这些数据源的单点映像,而另一组直接访问所需的每个数据源.
其结果令我们吃惊,而我们计划与您分享这些结果.
在这个由三部分组成的系列文章中,我们将带您查看我们的工作,这样您就可以自己比较不同的实现,并了解我们必须克服的难题.本文是该系列文章的第一篇,将描述我们的项目并总结我们的重大发现.第二篇文章将集中讨论我们的开发工作,带您更仔细地查看设计与编码问题.最后一篇文章将描述我们遇到的性能问题,并提供我们的联邦及本机数据访问实现的一些性能数据.
但如果您已经迫不及待地想要了解最终结果,那么结果就是:我们发现,当我们使用 db2 information integrator 中的联邦数据库技术时,我们的开发工作比直接使用每个数据源的确轻松得多 - 而且快得多.特别是,我们削减了大约 40% 的 servlet 代码,而且缩短了超过 50% 的设计.开发与测试周期.这比我们期望的还要好.
另外,可能同样重要的是:我们发现,尽管不同查询的结果相差很大(有些联邦查询比直接数据访问快,而另外一些有点慢),但是基于联邦的 servlet 的性能比直接访问数据的 servlet 更具竞争力.当然,根据发出的特定查询与实现的 servlet 设计,结果可能会不同.但是您将有机会回顾我们的工作,这样您就会明白它可能是怎样反映您组织中常见的那类工作.
关键技术概述
理解联邦 dbms 技术与 servlet 是理解我们项目的关键.这里我们将只描述这两者的几个要点,因为许多网站(包括本网站)已经发布了无数有关这些主题的教程与技术文章.如果您已经很熟悉联邦 dbms 与服务器端 java 技术,那么跳过这一节,开始阅读 我们做了什么.理解联邦 dbms
联邦 dbms 提供了到多个数据源的单一应用程序编程接口(api).... 下一页