DB2 J2EE开发成本收益分析(一) (1)
[ 来源:互网络 | 更新日期:2007-10-03 06:29:07 | 浏览次数:11600]
简介:external
你听说过这样一个报道:还有另一种新技术承诺让Java 2企业版(J2EE)开发者更便于进行J2EE的开发---一项能削减开发工作达百分之三十、四十甚至是五十的突破。一个新的软件能使复杂的开发任务简化。一 个新产品增强你现有的Java集成开发平台和网络应用程序服务器环境。
我们也听说了同样的报道。在同事间讨论时,我们听说IBM的新DB2 Information Integrator,能够提供存在于不同平台上的、使用不同格式保存的、能通过各种不同的应用编程接口(API)访问的数据的单地址映射。我们想知道这种技术能为需要使用完全不同的数据构建网络组件的J2EE程序员做点什么。
在本文中,我们将讨论一系列的servlet,在我们的案例中,我们构建这些需要访问跨多个数据源-- DB2、Oracle和Excel的数据的servlet。一类 servlet使用DB2 Information Integrator模拟这些数据源的单一地址映像,而另一类直接地访问每个所需的数据源。
结果很让我们吃惊,我们计划把它们和你分享。
在这三部分的文章系列中,我们将带你进入我们的工作,这样你就可以自己比较不同的实现之间的差异,然后了解我们必需克服的挑战。本文是这个系列的第一篇文章,描述了我们的工程并概括了我们的重要的发现。 第二篇文章将把注意力放在我们的开发工作中,用更加详尽的细节让你了解设计和编程问题。最后一篇文章将描述我们遇到的执行性能问题,以及介绍用于我们的联合数据库和本地数据访问实现的一些性能数据。
但是如果你等不及把这些全部学完,那么我在这里告诉你:我们发现,当我们使用DB2 Information Integrator的联合数据库技术的时候,我们的开发工作实际上比我们直接访问每个数据源要更简单、更快捷。尤其是,我们减少代码量达百分之四十,并且缩短了设计、开发和测试周期达百分之五十。这正是我们所期待的。
并且,也许同样重要,我们发现虽然不同的查询结果变化很大(一些联合查询比直接数据访问快,而其它一些要慢一些),我们的基于联合数据库技术的servlet的性能也比直接访问数据的servlet更有竞争力。当然,基于特定的查询问题和servlet设计实现,结果可能有差异。但是你将得到一个机会,评论我们的工作,这样你就能看到它可能正好反映你的机构中的日常工作中的问题。
关键技术的概述
了解联合数据库管理系统(DBMS)技术和servlet对于领会我们的工程非常重要。在这里,每个技术我们只是简略的提到几点,因为许多网站(包含这个)已经在这些主题上发布了许多教材和技术文献。如果你已经熟悉联合数据库管理系统和服务器端Java技术,那么请跳过这一节,开始阅读关于我们做的工程的细节。
了解联合数据库管理系统(DBMS)
一个联合DBMS提供了到多个数据源的单一应用编程接口(API)。这些数据源可能运行在不同硬件和操作系统平台,可能由不同的供应商开发并且可能使用不同的API (包含不同的非标准SQL语言)。程序员使用联合服务器就可以以一种抽象程度很高的方式工作,因为服务器提供了物理上不同的数据的单一地址映像。 使用表(或者其它数据对象,比如文件)的别名能够提供程序员位置透明性,消除那种他们必须精确知道要求的数据存放在何处的需要。功能补偿可以掩盖不同供应商的产品之间的差异,并且模拟一个给定数据源本身不支持的能力。多地址联合推动来自不同数据源的数据的整合。
数据源支持和产品功能在不同的供应商之间差别很大。DB2 Information Integrator支持所有的IBM DB2家族的成员,IBM Informix、Microsoft SQL Server、Oracle、Sybase、能使用ODBC的数据源、XML、网络服务、WebSphere


您的位置:
