套装软件与数据库厂商之间的恩恩怨怨--来自《计算机商业评论》

深层驱动力

数据库在现代套装应用软件中到底扮演何种角色,以及数据库与应用软件供应商之间的关系为何如此艰难?――来自Stuart Lauchlan的调查。

对于一个以创新为基石的行业来说,软件业务领域的辩论的回音是如此地相像。在1990年代早期,数据库供应商之间最热门的争论话题莫过于第三方开发工具市场的出现。这个市场中的新来者们,象Unify, Uniface以及最著名的PowerSoft,提供的应用开发工具独立于数据库――或者说更重要的是它们可以在多种数据库上即插即用。

这种开源系统给用户们带来了更大自由度的选择,它的支持者们争辩说它可以防止数据库产品被供应商加锁,如果此供应商在提供数据库产品的同时也提供开发工具的话就可能会出现这种情况。

而反对方――通常是数据库供应商们自己,他们眼睁睁地看着收入无法获得,而那些收入原本就被他们看做是已经属于自己的――反驳说当这些工具可以在多个数据库之上工作时,多样性意味着只能匹配最小的功能交集。

这样一来,他们继续争论说,这些工具就无法发挥下层数据库中数据模型的最大效能,因为它们没有象数据库开发商提供的同类开发工具那样经过最佳优化。他们接着说,我们建造了数据库,因此我们最懂如何才能最大限度地利用它的功能,而不是被迫去写入一些通用区域,即更高一层的应用程序接口(APIs)。

就是这样,迅速地过了十年,争论在继续着,但主角已经由开发工具变成了应用软件。对于那些依赖于所选择的底层数据库之上的应用程序来说,跟从前Unify 和PowerSoft之类的开发工具一样,都是数十亿元的大买卖。

争议内容出奇地相似。象来自Sieble或SAP的应用软件运行在来自Oracle的数据库软件之上,但它们能象Oracle自己开发的应用软件一样针对下层的数据库的方方面面都尽可能地做了优化调整吗?相似的情况是不是也发生在微软身上――为了挤入企业应用软件市场,他们是不是也正在积极开发他们的下一代只能运行在他们自己的SQL Server上的产品呢?

对于应用程序开发者来说,选择他们开发所用的下层数据库是由市场因素所决定的。作为市场领导者,Oracle通常是第一选择,接下来是来自IBM的DB2,来自微软的SQL Server也在增长中。在1990年代后期,Infomix也曾经是一个比较流行的平台,但受累于公司的崩溃并由IBM所接管,与此同时,以前的数据库强者Ingres以及Sybase都有自身的历史原因导致他们在应用软件市场上一直无所做为。

“我们与所有领先的数据库产品供应商都有着关系,”E.piphany 负责欧洲产品市场的头儿Soren Palleson说道。“就Oracle的例子来说这是一种分裂的关系,这种关系起着双向的效果。数据库公司依靠我们开发应用程序反过来又帮助他们更好地销售他们的数据库。数据库业务对象Oracle和IBM这种公司是如此地重要,以至于他们不敢轻易地预谋算计独立软件供应商。数据库代表着一种成熟技术并且有着大量公开的文档化资料以及技术信息。总是有大量的这方面的专家。”

协作

但是,那些由数据库供应商武装起来的程序,是否公众领域的信息真的很难与这些私有的知识相提并论呢?“我们做了大量的关于数据库及应用软件方面的优化”Palleson强调说。“针对数据库的新版本,我们在推出时就针对它们验证了我们的软件。我们了解技术之所在以及它的发展方向。那的确是大量的协作。”

可能任何一家供应商都没有SAP更有资格来评论应用软件供应商与数据库供应商之间的关系。SAP发展的它的业界领先的企业资源计划(ERP)应用软件R/3就是运行在Oracle数据库平台之上。这看起来象是完美的合作,直到Oracle的CEO Larry Ellison决定发布一系列的竞争应用软件,使得这两家公司处于一个竞争的境地。时至今日SAP既是Oracle最凶狠的竞争对手,同时也是它的全球最大的客户。

对于数据库供应商的商业机会来说,SAP也表现得象是Oracle一个卓有成效的分销商,虽然SAP已经尽了最大努力来提供软件的多样版本以避免过多的依赖它的最大对手。从最初的支持Informix,该公司现在也支持DB2和SQL Server甚至还购入了自己的SAP DB(来自Software AG.的Adabas)。但Oracle仍顽强地占据着最大的份额,SAP用户有超过70%都采用了Oracle。

“这种关系其实远不如最初看来那样复杂,”SAP商业智能的领导Steve Whity强调说。“我们迄今为止并且仍将是Oralce最大的客户,我们开发了运行在Oracle数据库上的最重要的应用软件。Oracle的数据库业务对他们而言要比应用软件业务更大更重要,因此他们不会做出损害这种关系的兴措。让我们的应用运行在他们最新版本的数据库上对他们比对我们更重要。”

“在技术以及对数据库功能的优化方面,我们有来自Oracle的工程师在现场。我们双方公认我们需要协同工作以最大程度发挥我们的能力。在我们的实验室里,我们通常可以比一般公众提前六到十二个月拿到他们下一次发布前的测试版本。跟微软也是如此。我们可以跟他们发布Windows Server 2003同一天发布我们相对应的程序,因为我们已经提前得到相关的技术细节。”

“我可以理解为什么有些供应商会争辩使用与开发数据库相同人员开发的程序很重要,但我想请他们来证明他们的观点。比如联接到一个SAP应用程序的并发用户数要多于使用一个Oracle应用程序的数目。这很大程序上是基于这样一个事实,就是商业应用软件的可扩展性不是位于数据库而是应用程序服务器中。

“无疑底层的数据库很重要,但它不是最重要的。真正的问题在于哪些人拥有具备必要功能的应用程序,然后哪些人拥有下层的数据库技术。商业用户需要业务功能。作为开发者,我们尽力将这些功能反映到底层技术去,但我们的确不能说我们不支持这些功能需求因为我们没有底层的技术。”

“应用至上”策略

这种“应用至上”的策略可能在SAP与Sybase的关系(这也正是它们之间所缺乏的)上得到了最好的体现。Sybase是1990年代中期财务服务领域的主要数据库供应商,因此将R/3放在Sybase上运行无疑是很值得让人期待的。根据SAP的事件版本,没有发布运行在Sybase上的应用软件归因于底层数据库的技术不符合应用软件的功能需求。“我们不支持Sybase是因为它的数据库使用页面级别的锁定( page level locking),而不是行项目级别的( row level locking),”Whity回忆道。“微软的SQL Server以前也是这种做法,但为了支持R/3,微软改变了数据库工作的方式。我们把球踢到了 Sybase那边。虽然从来没有认真统计过,但我认为我们从来没有因为不支持Sybase而损失过销售。

(本文首发于许坤的博客http://blog.xukun.com ,欢迎转贴,但请注明出处,谢谢!)

从Sybase角度来看,他们似乎也没有受到困扰。“我们看到我们客户的应用需求被我们的合作伙伴所处理,”Thomas Volk强调说,他是Sybase基础平台团队的执行副总裁。“我们的数据库与我们的集成能力一起使我们成为优秀的合作伙伴。Oracle与微软与他们的软件合作伙伴相竞争。数据库技术是一种日用品。数据库厂商不应该投入所有的精力去关注应用软件的运行。在我们看来让应用软件服务器与集成技术进行良好的匹配更重要,这块活儿不应该由应用软件来干。“

“我们确信数据库技术正在向着联合数据库(federated databases)发展,因此传统的数据库之间的关系以及位于它之上的应用软件将变得不再重要。将会有与底层数据库无关的虚拟数据管理系统。数据库与应用软件之间的界限将会变得模糊。

显然这对Oracle来说是个异端,它是单一源数据库与应用程序解决方案一侧的最大支持者。将数据库做为日用品的想法在Oracle这里不受欢迎。“我们的开发工具从开发角度全面优化用于快速开发及维护我们的应用软件,”Oracle 9i的产品市场经理Andy Cleverly说。“它们被优化运行于Oracle环境下,但同时我们开发的所有应用服务器与数据库技术都是完全面向Jave与XML标准来驱动的。”

联合数据库

但购买Oracle应用软件意味着不得不购买Oracle数据库,这确实并不是一个被广泛推崇的开源系统概念的定义。“从那个角度来看我们并不提供选择,”Cleverly承认。“但为什么你要选择在其它数据库上运行Oracle应用软件呢?从管理的角度来看:软件可以使用同一个工具进行优化,这会降低你的管理成本,因为你无需再购买一大堆的第三方工具。

“从开发角度来说,也有同样的基本逻辑。我们拥有区别于其它供应商的独到优势是因为我们的应用软件只选择运行在Oracle数据库上。我们不需要去考虑匹配所有其它数据库的问题。我们的竞争对手就没有这样的单一构架。他们选择具有的是更小的功能交集,因此他们无法完全发挥他们所支持的任何一种数据库的最大功能。”

Clevery还指出了另一个益处,“人们在谈论数据库与应用软件之间的联接,但忽略了另一件事情,”他辩解道。“我们的应用软件业务也推动数据库进行了大量的改动。发生在数据库上的改动很大比例是基于应用软件的功能需求。有大量的交叉改进来确保数据库与应用软件双方都能得到优化。”

迄今为止,在这个所有人都将他们的业务及开发模型基于多个数据库支持之上的市场中,Oracle仍然是绝对的少数派。但微软最近的举动看起来是一幕不可能的场景,就是Oracle的立场正在被它最大的竞争对手所支持。

在最近收购了两家中小规模的企业应用软件公司Navision和Great Plains,并形成了微软商业解决方案包(MBS)之后,微软要使SQL Server成为企业级的数据库并超越桌面软件商的野心进一步的膨胀。到现在为止,MBS产品包仍然继承了支持多数据库平台的传统,但正在进行措施来合并那些来自Navision 及 Great Plains产品包的代码段。

“目前我们并不唯一性地只支持SQL Server,”MBS英国市场总监Simon Edwards强调。“关键在于你是否为一个或是多个数据库来进行开发。那会有区别因为你不得不关注在核心的标准功能并且对所有的相关数据库都进行功能支持。因此要么你会担心你的成本要么就干脆不去这样做。”

集成的益处

他争辩说让第三方来为数据库进行应用软件优化也是完全可行的。“Great Plains在被收购前就是运行在SQL Server上的第三方软件供应商。”他们专门有一个SQL Server团队与微软在代码的alphas 或 betas阶段就共同工作。如果是这样的话,你就可以将优化写入产品的内核并且第三方也可以获得同样优秀的集成解决方案。

MS CRM的最新版本,这样一个为MBS软件系开发的应用软件,可能会为未来的方向给出一些线索。MS CRM将只运行在SQL Server数据库上。很自然的我们会假设MBS软件包的其余部分也会随之向这种匹配方法转化。Edwards继续谈到:“如何你试图去支持多数据库,那么在所选择使用的特性方面你就得做出某种程序上的妥协。”

另有些人推测微软将走得更远。“SQL Server将会被集成到操作系统中去,”说这话的是Mike Fuller,Intersystems的欧洲市场总监,他赞同这种紧密的集成并不是件坏事。“一个紧密集成的平台可以带来很大的益处。数据库被带来一种日用品的水平。这使得价格下降会让用户收益,但这也意味着象其它日用品一样每两到三年就会有一次升级。一个单一的开发环境会让维护业务逻辑变得更加容易。”

但最后Palleson加上了超越所有关于数据库及应用软件来自同一供应商的优点与缺点的实用主义注解。“我们必须从微软与司法部之间发生的事件中获得教训,”他考虑道,“如果一个供应商从有关技术的未公开信息中得到不公正的商业利益,那么他们可能会发现自己处于大堆的法律麻烦之中。”

CBR观点

当在选择应用软件时询问底层的数据库支持是值得的。很多应用软件只支持一种数据库,并且在很多情况下用户应该有充分的信息去决定这是否是他们想用于他们所有基础架构的数据库。

原文地址:

http://www.cbronline.com/content/COMP/magazine/Articles/Data_Management/000153.asp

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值