Google的Colossus存储系统仍然依赖机械硬盘来存储大部分数据
在最近的一篇博客文章中,Google透露了其自行研发的存储系统 Colossus背后的一些“秘密”。Colossus是一个庞大的网络基础设施,该公司将其描述为通用存储平台。Colossus功能强大、可扩展,并且易于使用和编程。Google表示,这台庞大的机器仍然使用久经考验(但仍在不断发展)的磁性硬盘驱动器。
Colossus为许多Google服务提供支持,包括YouTube、Gmail、云端硬盘等。该平台由Google文件系统项目发展而来,这是一个分布式存储系统,用于管理大型数据密集型应用程序,使事情更易于管理。令人惊讶的是,Google通过安装一种依赖于快速固态硬盘的独家缓存技术增强了Colossus的性能。
Google在数据中心为每个集群构建一个Colossus文件系统。许多这样的集群都足够强大,可以管理多个EB的存储空间,特别是两个文件系统,每个文件系统托管超过10EB的数据。该公司声称,由Google提供支持的应用程序或服务永远不会耗尽GoogleCloud区域内的磁盘空间。Colossus文件系统的数据吞吐量令人印象深刻。Google声称,最大的集群“经常”超过每秒50TB的读取速率,而写入速率高达每秒25TB。这一吞吐量足以每秒发送100多部完整的8K电影。
将数据存储在正确的位置对于实现这种超高性能至关重要。Colossus内部用户可以决定他们的文件是否需要存储在HDD或SSD中,但大多数开发人员采用一种称为L4分布式SSD缓存的自动化解决方案。该技术使用机器学习算法来决定对特定数据块应用什么策略。但是,系统最终会将任何新数据写入HDD。
L4缓存技术可以通过观察I/O模式、将文件分成特定“类别”以及模拟不同的存储位置来(部分)解决这个问题。根据Google的文档,这些存储策略包括“放置在SSD上一小时”、“放置在SSD上两小时”和“不放置在SSD上”。
当模拟正确预测文件访问模式时,一小部分数据会被放在SSD上,以吸收大部分初始读取操作。数据最终会迁移到更便宜的存储(HDD),以最大限度地降低整体托管成本。
该公司表示:“作为所有Google和GoogleCloud的基础,Colossus有助于为数十亿用户提供可靠的服务,其先进的SSD放置功能有助于降低成本并提高性能,同时自动适应工作负载的变化。”“我们对迄今为止构建的系统感到自豪,并期待继续提高规模、复杂性和性能。”
踩一下[0]
顶一下[0]