SaaS普及将令关系数据库不复存在

SaaS一般认为是由提供商为企业搭建信息化所需要的所有网络基础设施及软件、硬件运作平台,并负责所有前期的实施、后期的维护等一系列服务,企业无需购买软硬件、建设机房、招聘IT人员,即可通过互联网使用信息系统。就像打开自来水龙头就能用水一样,企业根据实际需要,从SaaS提供商租赁软件服务。

  目前世界上许多跨国信息技术行业的公司都在开发基于SaaS的产品和服务,为未来互联网的发展提供技术平台,而电子商务是近年来互联网应用最受瞩目的领域。因此SaaS模式的普及必将对电子商务的发展产生深刻的影响。

  正如10Gen工程副总裁Geir Magnusson所指出那样,在未来我们将很难找到关系数据库的影子,这是因为关系数据库不适用于分布式环境。SaaS的普及要求我们必须重新审视我们做事的方式。

  时下的许多新型数据库,包括Google的Bigtable,Amazon的SimpleDB,10Gen的Mongo,AppJet的AppJet数据库以及甲骨文开源BerkelyDB。这些数据库没有一个是关系型的。而这些数据库具有一些共同特征,就是都特别适用于服务云计算式的应用。它们中的大多数可以在分布式环境中运行,这意味着他们可以分布在多个地点的多台服务器上。它们本质上都不是事务性的,并且都牺牲了一些高级查询能力以换取更好的性能。在很多情况下,这些数据库可以通过对象调用来检索,而不用SQL。

  尽管大型关系数据库已经被应用在很多数据处理中心,但SaaS需要一种不同的设置来充分发挥其潜力。试想,在跨越地理空间距离之间执行复杂查询以便减少响应时间、设计和维护支持不同位置的相关数据备份、在一个点瘫痪时能保证该数据同步、维护和运行这样的体系并非易事。因此,数据库组成部分在不同位置的分散对SaaS很必要,这也是SaaS产生的原因。更重要的是SaaS体系结构具有不同于目前使用的关系型结构的属性,在SaaS体系结构里,关系不复存在,人们以群集形式看待数据。

  目前用户所使用的传统数据库开发软件系统本质应该叫数据库软件系统,是一个数据库系统,开发这样的系统非常简单,成本也非常低廉,只要根据需求先设计好数据表结构,然后,设计编写大量SQL语句,虽然也使用JAVA/PHP/.NET等语言,但实际上这些语言只是将SQL送往数据库执行的运输工,没有什么价值和地位。所以,这样的系统运行在互联网环境下,主要负载就集中在数据库的SQL运行上,也就是说:整个软件系统性能关键点就集中在数据库上了,数据库是性能的主要承担者,尽管用户使用的有可能是Websphere/weblogic等应用服务器,但是由于Java只是运输工,所以起不到性能上分散负载的作用。

  正是由于以上种种原因,有专家认为SaaS的普及将对关系型数据库的应用将产生巨大的影响,而绝大多数电子商务系统所使用的数据库还是基于关系型的数据库,未来随着云计算的大量应用,势必对电子商务数据库的构建产生影响,进而影响整个电子商务技术的发展。