Google的Colossus存储系统仍然依赖机械硬盘来存储大部分数据

摘要:

在最近的一篇博客文章中,Google透露了其自行研发的存储系统 Colossus 背后的一些“秘密”。Colossus 是一个庞大的网络基础设施,该公司将其描述为通用存储平台。Colossus 功能强大、可扩展,并且易于使用和编程。Google表示,这台庞大的机器仍然使用久经考验(但仍在不断发展)的磁性硬盘驱动器。

Colossus 为许多 Google 服务提供支持,包括 YouTube、Gmail、云端硬盘等。该平台由 Google 文件系统项目发展而来,这是一个分布式存储系统,用于管理大型数据密集型应用程序,使事情更易于管理。令人惊讶的是,Google 通过安装一种依赖于快速固态硬盘的独家缓存技术增强了 Colossus 的性能。

Google 在数据中心为每个集群构建一个 Colossus 文件系统。许多这样的集群都足够强大,可以管理多个 EB 的存储空间,特别是两个文件系统,每个文件系统托管超过 10 EB 的数据。该公司声称,由 Google 提供支持的应用程序或服务永远不会耗尽 Google Cloud 区域内的磁盘空间。Colossus 文件系统的数据吞吐量令人印象深刻。Google 声称,最大的集群“经常”超过每秒 50 TB 的读取速率,而写入速率高达每秒 25 TB。这一吞吐量足以每秒发送 100 多部完整的 8K 电影。

将数据存储在正确的位置对于实现这种超高性能至关重要。Colossus 内部用户可以决定他们的文件是否需要存储在 HDD 或 SSD 中,但大多数开发人员采用一种称为 L4 分布式 SSD 缓存的自动化解决方案。该技术使用机器学习算法来决定对特定数据块应用什么策略。但是,系统最终会将任何新数据写入 HDD。

L4 缓存技术可以通过观察 I/O 模式、将文件分成特定“类别”以及模拟不同的存储位置来(部分)解决这个问题。根据 Google 的文档,这些存储策略包括“放置在 SSD 上一小时”、“放置在 SSD 上两小时”和“不放置在 SSD 上”。

当模拟正确预测文件访问模式时,一小部分数据会被放在 SSD 上,以吸收大部分初始读取操作。数据最终会迁移到更便宜的存储(HDD),以最大限度地降低整体托管成本。

该公司表示:“作为所有 Google 和 Google Cloud 的基础,Colossus 有助于为数十亿用户提供可靠的服务,其先进的 SSD 放置功能有助于降低成本并提高性能,同时自动适应工作负载的变化。” “我们对迄今为止构建的系统感到自豪,并期待继续提高规模、复杂性和性能。”

我们在FebBox(https://www.febbox.com/cnbeta) 开通了新的频道,更好阅读体验,更及时更新提醒,欢迎前来阅览和打赏。
查看评论
created by ceallan