你好,游客 登录 注册 搜索
背景:
阅读新闻

掌握时间的 Google数据库Spanner现在对所有人开放

[日期:2017-02-21] 来源:网路冷眼  作者:网路冷眼 [字体: ]

掌握时间的 Google数据库Spanner现在对所有人开放

Google数据库 Spanner 是第一个全球数据库,它是跨越多个大陆的数十个数据中心的数百万台计算机上存储信息的一种方式,它现在已支持从 Gmail 到 AdWords(公司的主要赢利点)等多个产品。

大约十年前,少数 Google 最有才华的工程师开始构建一个似乎违背逻辑的系统。

这个称为Spanner 的系统是第一个全球数据库,它是跨越多个大陆的数十个数据中心的数百万台计算机上存储信息的一种方式,它现在支持从 Gmail 到 AdWords(公司的主要赢利点)等多个产品。 但它不只是规模的大小让人不可思议。真正的窍门是,即使 Spanner 在全球各地延伸,它的行为就像在同样一个地方一样。

Google 可以在此数据库的一部分中更改公司数据,即运行广告或说明广告客户的帐户,而不会与地球另一端发生的更改相矛盾。此外,它可以方便可靠地在世界各地的多个数据中心复制数据,如果任何一个数据中心出现故障,那么可以无缝检索这些副本。对于一个如Google 这样真正的全球性业务,这种跨大陆的一致性是非常强大的。

在 Spanner之前,这似乎不可能。机器之间不能保持数据库一致,没有恒定和稳定的沟通,和全球通信花了太长时间。你知道,光的速度和一切。谷歌的工程师需要的东西像ansible,一个虚构的装置,首次出现在Ursula Le Guin的1966年的科幻小说《Rocannon的世界》里。 ansible可以立即在任何距离发送信息,而不顾时间和空间。Spanner不是ansible,它不能缩小空间。因为那些工程师找到了一种方法来利用时间,所以Spanner能工作。

没有人曾经建立过这样的系统。没有人以同样的方式拥有时间。现在 Google 将这项技术作为云计算服务提供给世界其他地区。

Google 认为,在至关重要的云计算市场,与微软和亚马逊竞争这可以提供一些额外作用,只是因为 Spanner 是独一无二的。有些人同意。说,“如果有人提供Spanner,人们会想要它,也会使用它,” 斯坦福大学计算机科学助理教授,专门从事大规模分布式软件系统Peter Bailis 说。但正如其他人指出的:很少有企业与 Google 有同样的需求。

信任时间

在过去,如果你构建一个覆盖数百台机器和多个数据中心的系统,你遵循一个重要的规则:不要信任时间。如果一个系统涉及多个地方的多个机器之间的通信,时间将因机器而异,正是因为保持时间--精确的时间--是一件难事。像网络时间协议这样的服务旨在为机器提供一个公共参考点。但因为主要网络很慢,这也工作得很好。发送时间需要时间。

对于Google,这是一个问题。如果数据库跨越多个区域,则无法确保世界一部分的事务与另一部分中的事务对齐。它不能得到一个真正的全球运作的图景。它无法无缝地复制交叉区域数据或在需要时快速检索复制的数据。因此,Google的顶尖工程师找到了一种信任时间的方法。

部分秘诀是他们为Google的数据中心配备了一系列GPS接收机和原子钟。 GPS接收机,非常像手机中的GPS接收机,从全球轨道的卫星获取时间,而原子钟保持自己的时间。然后,它们将时间读数传送到每个数据中心的主服务器。这些z主服务器不断交换读数,努力解决共同的时间问题。

尽管仍然存在误差范围,但由于这么多的读数,主服务器可以引导一个更可靠的计时服务。 “这让两个地方之间的协调更快,” 前谷歌工程师Peter Mattis,他创建了一个初创公司 CockroachDB,专门建立了 Spanner 的一个开源版本。

Google 称这种计时技术TrueTime,只有 Google 拥有它。Google 在2012 年发布的一份著名的研究论文上,Mattis 和CockroachDB 复制了 Spanner 的许多其他部分,但不是TrueTime。 Google只有因为它庞大的全球基础设施才能拉开这个距离。

一个变化的世界

可以肯定的是,其他几个人可以建立类似的服务,即 Amazon 和 Microsoft。但他们还没有。在 TrueTim e的帮助下,Spanner  为Google 提供了在多个不同市场的竞争优势。它不仅支持 AdWords 和 Gmail ,还支持 2,000多种其他Google 服务,包括 Google 相册和 Google Play 商店。 Google获得了前所未有的大规模处理在线交易的能力,并且得益于 Spanner 的极端形式的数据复制,它能够保持其服务以前所未有的一致性运行状态。

现在 Google 希望在云计算市场有另一种竞争优势。它希望让客户相信,Spanner 提供了一种更简单的方式来运行全球业务,更轻松地在多个地区复制数据,从而防止中断。讽刺的是,很少有企业真正的全球化。但Google正在给它的新服务将给予客户随时间扩展的自由投下赌注。其中包括一家帮助企业监督其供应链的公司JDA,现在正在测试 Spanner。JDA 集团副总裁 John Sarvari 表示:“数据量和数据的速度正在显著提高。”

Spanner 也可用于金融市场,让大银行更有效地跟踪和同步在全球各地发生的交易。Google 说它已经在与大型金融机构谈论这种事情。传统上,由于安全和隐私的原因,许多银行对处理云中的交易非常谨慎。但这些态度都在软化。几年前,Spanner 只是 Google 自己需要的东西。现在,Google 正在改变银行业务。

原文:https://www.wired.com/2017/02/spanner-google-database-harnessed-time-now-open-everyone/

作者:CADE METZ

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-02/140888.htm

linux
相关资讯       Spanner 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款