谷歌公司推出的云数据库服务带来规模和数据一致性

谷歌公司的Cloud Spanner可能已经广泛采用多年,但这可能代表着在全球范围内通过公共云中的大量数据集保持一致性迈出的一大步。

谷歌

谷歌公司已经在全球范围内推出可扩展的数据库服务,计划超越其云计算竞争对手,但这可能将在未来实现。

Cloud Spanner是当前处于测试阶段的完全托管服务,它将事务关系数据库的一致性与通常与NoSQL数据库相关联的分布式水平扩展相结合。新的谷歌云端数据库服务旨在通过全球规模和高可用性简化管理,避免在复杂系统中出现数据损坏的威胁。

QuizletInc.是一家位于旧金山的在线学习公司,每月支持超过2000万用户,它依靠MySQL作为主要数据库。但是,随着业务的发展,尽管使用了谷歌云端平台(GCP)最大的虚拟机,但其业务发展已开始进入瓶颈。

“你可以优化查询,添加索引和压缩,将表格拆分到其他硬件上并进行复制,但是这样做之后,除非使用水平分片,否则仍然有这个根本障碍。但是,这可以写到单台机器上。”Quizlet公司平台主管PeterBakkum说。

Quizlet公司已经对Cloud Spanner进行了几个月的测试,并将其视为解决此问题的潜在解决方案。

“因为它是一个可以极其扩展的关系数据库。”Bakkum说,“你能够以秒的方式调整缩放单位的节点数。”

Cloud Spanner解决的主要问题是全球范围内的数据库复制。Ovum公司首席分析师Tony Baer说,即使多个用户进行交易并连接到地球两端的数据中心,它也能提供数据一致性。

Cloud Spanner通过使用协议的Paxos系统消除了瓶颈,它依赖于一种算法在全局分布式节点之间创建共识,以确定哪个位置,主要是基于数据引力,是最有权威的提交。

Baer说,“这不像分析数据库,像Hadoop…如果事务系统崩溃,企业的业务就会崩溃。”

数据库及其拥有的大量数据已经成为公共云提供商之间的激烈竞争。主导公共云市场的亚马逊网络服务(AWS)已与Oracle公司公开竞争,并声称其Aurora兼容MySQL的数据库是其增长最快的服务。但是,CloudSpanner代表了其他云计算提供商(可能没有其他技术公司)可以提供的系统。

Baer表示,其他公司,如NuoDB,Aerospike和Clustrix,在Paxos上提供一些变化,但没有一个可以扩展到CloudSpanner的程度。最终,CloudSpanner不会对抗其他主要的云计算提供商,而是针对Oracle和SQL数据库引擎,这需要数年的时间才能完成并实现更复杂的功能。Oracle公司使用切分和智能管理解决SQL数据库周围的规模问题。

“Oracle公司有一个非常成熟的SQL引擎,”Baer说。

谷歌公司一直致力于这项技术,内部简称为Spanner,十年来满足自己的需求。该公司已经在世界各地的数据中心对Spanner进行了数百个应用程序和PB级数据测试。如今,作为产品(如AdWords和Play)的骨干,它每秒支持数千万的查询。

Baer说,Cloud Spanner更具可扩展性,但目前尚不清楚谁可以使用这项服务。对于一个全球性组织(如一家大型银行)来说,整合其数据库似乎是一种天然的合适方式,但这需要数年时间才能得到大量采用。同时,它可以很好地适用于供应链管理或物联网工作负载。

“Cloud Spanner必须证明自己是企业需要的东西,因为它不是他们习惯的产品。”Baer说。

Bakkum说他对这样的所有管理系统持怀疑态度,特别是因为他最近测试了一个最终没有达到账单的交钥匙服务。

“谷歌公司是我信任的提供这样服务的少数几家公司之一。”他说。“分布式数据库很复杂,很难获得所有的细节。”

这种服务不会立即获得立足点,因为企业可能甚至不知道他们有这个问题,或者知道有办法解决它,Gartner分析师尼克Heudecker说。但这些类型的规模问题不再保留给谷歌公司的世界。

“在单个服务器或单个数据中心上开始采用越来越多的应用程序,越来越多的组织发现他们在某种程度上具有类似谷歌的问题,但他们不会雇佣数千名工程师来复制这些类型的解决方案。”他说。

JDA软件集团公司是一家位于亚利桑那州斯科茨代尔的全球零售和供应链软件公司,于2015年将业务迁移到Google云平台,构建其下一代产品,目前正在测试CloudSpanner。JDA技术集团副总裁JohnSarvari表示,采纳CloudSpanner是因为该公司准备从传统数据库转移并大量投资新技术。

“如今,没有几家组织对此做好准备,但对于那些组织来说,这将是非常有利的。”JDA技术副总裁JohnSarvarigroup说。

JDA公司使用Oracle的传统工作负载,但其价格超过了预算。为了维护高可用性,灾难恢复以及创建和调整索引,工作人员对此有相当大的需求。

该公司开始测试CloudSpanner,使其供应链更具响应性,能够从全球任何节点获取信息,而无需添加更多节点或担心限制NoSQL的最终一致性。

JDA公司已经使用其他谷歌云端数据库和存储服务(如BigQuery,BigTable和CloudDatastore)为其开发人员提供已批准的服务目录,并将在完整版本中进行尽职调查后纳入CloudSpanner。

“使用这个模型的原因之一是我们要真正消除任何运营任务的责任,我们有能力将这一任务交给第三方,在这种情况下,我们采用谷歌的服务。”

GCP继续成熟

随着谷歌云服务试图赶超AWS和微软Azure,它并不是没有缺点。谷歌公司在过去一年中也出现了服务中断的问题,就是最近一个月,用户无法创建超过两个小时的新实例。但早期采用者表示,推出CloudSpanner谷歌公司如何改变和学习企业本土化的另一个标志。

“我们真的开始看到Google变身为更多的企业服务组织,”Sarvari说。