Facebook是如何存储每天20亿张照片的?

脸书庞大的帝国需要存储的数据不断爆炸 。比如现在每天要分享20亿张照片,而且需求还在增加,只有不断建设和扩大存储和数据中心才能满足 。

我们之前多次介绍过脸书的数据中心(见揭秘脸书新数据中心,再探脸书数据中心),包括俄勒冈州的普林维尔、北卡罗来纳州的森林、瑞典的卢莱欧、爱荷华州的阿尔图纳等 。不仅如此,脸书还用自己的技术建造了它,并开放这一经验与大家分享 。最先进的是最新的Altuna数据中心,它使用由廉价交换机组成的网状连接交换架构来提高性能 。脸书称之为下一代数据中心-数据中心结构 。

上述解决方案在提高网络性能、降低成本和提高数据中心能效方面发挥了关键作用 。然而,不断增长的存储需求是没有办法的,脸书需要研究其他对策 。最近,脸书披露了其冷藏系统如何解决这个问题 。

顾名思义,冷库存储不常用的数据,比如几年前的历史数据 。对于历史数据,传统的解决方案是使用磁带库、光盘等廉价介质来存储,但这种介质的缺点是访问速度太慢 。谷歌不久前推出的云存储服务GoogleCloudStorageNearline很好地解决了这个问题 。

设计原则

然而,脸书团队决定从一个新的角度来看待这个问题 。他们从头开始,以端到端的方式重新设计了软件和硬件 。

1)节能降耗

在这个以存储为核心的冷库系统中,存储资源按需启动,并放弃冗余的发电机或备用电池来提高能效 。因为冷库使用的是低端商用硬盘,硬件限制要求命令批处理要非常小心,牺牲时间延迟换取效率 。它对物理磁盘的访问是基于未能控制硬盘占空比之间的平均时间 。

2)智能管理

因为为了省电和降低成本放弃了待机电源,所以要求软件能够随时应对哪怕是最小的电源中断,避免数据丢失 。

此外,数据应该是持久的,并确保其完整性 。为了保证耐久性,系统设计的各个方面都要考虑耐久性,消除单点故障,用尽可能少的步骤恢复整个系统 。冷存储即使是多带带管理元数据的系统也是可选的 。也就是说,数据本身是可以自我描述的,不需要外部协助就可以辅助恢复 。这样做的原因是,在其他系统出现数据丢失的情况下,冷库是最后一道防线 。

3)面向未来

考虑到脸书的数据设计,我们也需要考虑未来 。当许多系统的规模扩大或利用率提高时,许多系统的性能往往会下降或出错,因此在一开始设计这个脸书系统时,应该考虑如何避免这个问题 。

普林维尔脸书的冷藏设施 。

基于上述考虑,脸书在普林维尔和森林建立了两个冷藏系统,存储了数百千兆字节(100万)的数据 。然而,如此高的容量,其能耗仅为传统存储解决方案的1/4 。而且,与一般系统不同,这种系统的性能不会随着规模的扩大而下降 。相反,系统越大,性能越好 。最后值得注意的是,脸书的存储系统采用了非常经济高效的冗余备份方式,可以实现系数低于2的数据冗余 。从以上几点来看,作为一个半在线半离线的仓储系统,冷库表现出非常理想的特点 。当然,如果你想充分利用这个系统,你需要脸书开放计算系统的其他组件的配合,比如开放机架、网络、数据中心等 。对于普通人来说,学习并不容易 。

冷库系统是基于OpenVault存储的 。这是专为开放式机架(开放式计算机架标准)设计的简单高效的存储解决方案 。它采用模块化的输入输出拓扑 。2U机架可以容纳30个硬盘(每个托盘15个硬盘,水平放置而不是垂直放置),并且几乎可以与任何服务器互操作 。冷库是在这样一套高密度JBOD(只是一堆磁盘,只是一堆磁盘)存储的基础上进行改造的 。

冷藏架

硬盘按需启动,电耗降到1/4

降低功耗是系统最初的设计目标之一 。据介绍,该系统功耗极低,降低到传统数据中心的1/6 。手段之一就是用空间换取消费减少 。数据中心占地面积非常大,每个数据大厅满负荷可支持1000PB的存储容量 。未来随着单盘容量的增加,其存储规模可以进一步扩大 。

同时,由于冷库系统存储的是历史数据,而不是活跃的生产数据,因此脸书还取消了冗余电力系统(不间断电源、发电机、备用电池等) 。),从而进一步提高能效 。

在机架内部,每2U放置30个硬盘,电源插头盒放置在中间位置 。

为了尽可能降低能耗,ColdStorage允许服务器在没有硬盘的情况下启动,然后软件控制繁忙 。

闲度 。不过这样就要求对Open Vault存储规范进行修改 。其最大的改动是每次只允许每托盘有一块硬盘上电 。为了避免软件bug错将所有硬盘上电导致数据中心保险烧坏,Facebook甚至还专门修改了硬盘驱动器的固件 。

此外,由于不必每次都要给所有硬盘供电,每个存储节点散热风扇的数量也从6个降到了4个,供电机框数从3个降到了1个,供电单元数从7个降到了5个,Open Rack机架母线数特从3条降到了1条 。这样的调优令机架的存储密度大大增加,每机架可容纳2PB的存储容量(4TB硬盘),与传统存储服务器相比,其耗电只有后者的1/4 。

    推荐阅读