IBM? 在旧金山的 LinuxWorld 宣布正在将 Cloudscape?(一种纯关系 Java? 数据库)作为开放源代码发布给 Apache Software Foundation (ASF)后者已为其建立了一个名为Derby的孵化器项目这是继 IBM 向开放源代码社区作出一系列承诺以来的最新承诺为了弄清楚更多关于这种数据库的问题以及这种数据库如何融入到 IBM 的战略和 Java 应用程序架构中去Jon Prial IBM 副总裁接受了有关方面的专门采访以下为访谈的部分内容
问: 在 LinuxWorld 上IBM 宣布将 Cloudscape 贡献给 Apache Software Foundation那么什么是 Cloudscape?
答Cloudscape 是一种基于 Java 的具有全面事务支持能力的关系数据库技术它是一种纯嵌入式数据库可以用在应用程序中也可以作为更传统的客户机服务器应用程序的数据库它体积小而且不需要数据库管理员您只需编写应用程序在需要时直接调用数据库Cloudscape 就可以为您服务
问: 开放源代码版本与 IBM 的商业版本之间有什么不同?
答我们已经把 Cloudscape 的代码献给了 Apache Software Foundation [ASF]在 Apache 中这个项目叫做DerbyIBM Cloudscape 的未来商业版本都将以 Derby 代码为基础
Derby 是一个孵化器(incubator)项目这也是外部项目成为 ASF 一部分的一种常见的方式但是开发人员如今可以在 Apache 的许可下为 Derby 代码作出贡献或者下载 Derby 代码我们正在积极地与我们的合作伙伴以及 Apache 合作以发展和形成致力于 Derby 项目的社区
对于我们的 Cloudscape 项目IBM 搬用 Derby 代码并作为 IBM Cloudscape offering 提供完全支持您也可以免费下载 IBM Cloudscape 代码并且可以从 IBM 那里购买对它的支持但我们并不打算收取 Cloudscape 的许可费
问: 为什么 IBM 决定公开 Cloudscape 源代码?
答通过将 Cloudcape 开放源代码IBM 希望加快基于 Java 的应用程序的开发并带动 Linux 和 Java 方面的更多革新所以扩大这方面的市场就等于扩大高价值的 IBM 中间件硬件和服务方面的市场我们认为这样做尤其可以在嵌入式数据库应用程序小型企业解决方案以及基于 Java 和基于 Web 的应用程序等领域开辟新的商机
开发人员能识别好的代码当我们从 Informix? 取得 Cloudscape 代码时我们内部的开发社区便开始谈论它并做一些工作实际上至今在 IBM 中已有 个项目在他们的 offering 中使用 Cloudscape 其中有很多项目已发布到市场例如 WebSphere? Application ServerWebSphere Portal 和 IBM Workplace所以我们知道我们有一项有趣的技术而这项技术可以成为 Java 架构的一部分我们看到 Java 数据库和 Apache 正在做的 Java 工作之间有关联并且认识到这是一个巨大的项目适合开放源代码来做
现在IBM 对开放源代码社区有一个长期的承诺我们之所以有能力建立那样的关系部分原因就在于我们知道不是为了开放源代码而开放源代码而是开放源代码可以使事情变得更容易
IBM 知道必须找到正确的方式来建立社区和鼓励革新而我们也用了很多不同的方法例如支持 的创建通过与 Apache 合作我们可以为使用 Derby 并帮助使其变得更好的开发人员们建立一个社区实际上我们希望看到 Derby 数据库变得和 Apache HTTP 服务器一样无所不在
问: 使用 Cloudscape 可以做哪些事情呢?
答Cloudscape 最有趣的一个用法就是作为一个 Java 数据存储直接将数据库输入到 Java 应用程序中我曾提到过Cloudscape 数据库非常小它只是一个 MB 的 jar 文件有了这样一个 Java 数据库当一个 Java 应用程序想要使用它时根本不需要做任何工作不需要进行任何管理Java 应用程序只需发出 JDBC 调用然后访问数据之所以可以这样做是因为数据库自始至终都是以一个 jar 文件的形式存在
Cloudscape 技术实际上非常通用 — 我认为认识到其他类型的应用程序在这里也可以使用是很重要的我曾提到过IBM Workplace 在客户端使用 Cloudscape以便将数据自动复制回服务器我们在 LinuxWorld 提供了 IBM Workplace Data Access 可编写脚本桌面数据库的技术预览 — 这是一种用于创建客户端数据库查询和报表的商业用户工具
人们可以使用 Cloudscape 网络服务器特性将其当作基于服务器的数据存储来访问因此虽然我们原本期望看到围绕 Java 应用程序的大多数初始用法但实际上 Cloudscape 还可以用作客户机服务器数据库
问: IBM 将提供哪些类型的 Eclipse 工具?
答我们拥有一些用于 Eclipse 的插件通过这些插件可以访问数据库此外我们还为那些使用 Cloudscape 并希望迁移到企业级的数据库的人们提供了工具例如他们可以从 Cloudscape 移植到 DB?
问: 您提到了 IBM Workplace Data Access可以谈得更详细一点吗?
答IBM Workplace Data Access 是商业用户用于创建和查询运行在不同桌面环境(包括 Windows? 和 Linux)上的数据库应用程序的一种工具我们使用 Eclipse 框架开发 GUI用 Cloudscape 作为底层数据库
我们认为 IBM Workplace Data Access 将可以独自开辟新的机遇但它也是将轻量级跨平台的数据库(例如 Cloudscape 或 Derby)与用于应用程序开发的跨平台客户端框架(例如 Eclipse)相结合的一个伟大的典范
问: Cloudscape 在 DB 数据库系列中处于什么样的地位?
答Cloudscape 能满足新的和正在增长的市场的需求作为面向 Java 的数据库Cloudscape 的定位非常恰当它很好地弥补了我们的其他数据库DB Universal Database?Informix Dynamic ServerDB Express 等等又因为它是建立在开放标准基础上的任何针对 Cloudscape 编写的应用程序都可以很容易地迁移到 DB UDB 和其他数据库上运行这正是企业级的解决方案所需要的
问: Derby 与其他开放源代码数据库有什么不同?
答没有哪种开放源代码数据库像 Derby 这样适合扩展 Java 架构并带动整个社区的革新IBM 非常注重满足这一需求我们曾看到其他公司仅仅做到数据库源代码开放根本没有提供可行的计划来建立社区很多开放源代码数据库都有许可限制有时候 ISV 实际上不得不为取得重新发布开放源代码数据库的权利而付出代价而且有时候这些数据库并不完全是关系型数据库或事务处理数据库
所以与其他开放源代码数据库相比Derby 是独一无二的它的确是功能丰富的关系型数据库而且它完全是免费提供的没有商业许可限制
问: 您还有什么要补充吗?
答Cloudscape 技术是 IBM 更大型数据产品战略的一个扩展我们的想法是集成各种不同的数据存储 — 从 zSeries? 到普适(pervasive)设备 — 以支持来自 IBM 和非 IBM 数据源的结构化的和非结构化的数据我们认为信息集成是将这些维系在一起的关键而我们的 DB 产品为客户提供了实现这一点的框架
公共的一致的用于访问信息的框架使人们可以做更多的事情 — 利用数据收集更多洞察力以及成为更能随需应变的企业我们看到 Cloudscape 正是其中的关键部分