“在云计算计划里将找不到关系数据库的影子,这并非偶然,因为关系数据库不适合用于云计算环境“Geir Magnusson,10Gen工程副总裁这样认为。10Gen是一家按需平台服务供应商。
Magnusson帮助编写过Apache Geronimo应用服务器软件,本周在纽约举行的O'Reilly Web 2.0 会议上发言中他指出:“云计算是一种不同的技术,不同得足够改变开发者看待问题和解决问题的方式”。“我们将不得不重新审视我们做事的方式”,他说。
在发言期间,Magnusson列举了许多被专门开发用于云计算环境的新型数据库,包括Google'的Bigtable, Amazon的 SimpleDB, 10Gen自己的 Mongo, AppJet的 AppJet 数据库以及甲骨文开源BerkelyDB。
Magnusson指出,这些数据库没有一个是关系型的(他特别强调了一个值得注意的例外“Drizzle”,MySQL应用于web环境的一个精 装版)。
这些数据库具有一些共同特征,正是这些特征使它们特别适用于服务云计算式的应用。它们中的大多数可以在分布式环境中运行----意味着他们可以分布 在多个地点的多台服务器上。它们本质上都不是事务性的,并且都牺牲了一些高级查询能力以换取更好的性能。(在很多情况下,这些数据库可以通过对象调用来检 索,而不用SQL,无论如何,对程序员来说,前者更自然些)。
尽管大型关系数据库如甲骨文公司提供的产品,已经被部署在很多数据中心,但云计算需要一种不同的设置来充分发挥其潜力。数据库组成部分在不同位置的 分散对云计算很必要,这也是其名得来的原因。在辽阔的地理距离之间执行复杂查询可以减少响应时间,此外,设计和维护支持不同位置的相关数据备份并在一个点 瘫痪时能保证该数据同步的体系并非易事。
“云体系结构里的衡量具有不同于我们现在使用的关系型结构的属性”,他说,其结果是:“在云体系结构里,关系不复存在,人们以群集形式看待数据”。
Magnusson的观点得到会上另一位发言人AdaptiveBlue 公司的Alex Iskold的赞同,AdaptiveBlue是一家以客户为导向的公司,该公司提供一种浏览器插件,能根据用户的使用历史,使用语义标记和Web服务体 现个性化设置。该公司把服务建立在Amazon的托管平台服务上,包括SimpleDB。Iskold指出如果AdaptiveBlue使用关系型数据库 那么这种服务将不会扩大到广泛使用。