揭秘Facebook如何存储每天20

Facebook的庞大帝国需要存储的数据时刻都在不断爆炸。比方说,现在它每天要分享20亿张照片,而且需求还在不断增加,唯有靠不断建设扩充存储和数据中心才能满足。近日,Facebook揭秘了自己的coldstoragesystem存储系统是如何解决这个问题的。

顾名思义,coldstorage(冷存储)存放的就是不常使用的数据,比如说几年前的白癜风。对于白癜风,传统的解决方案是采用带库、光盘等廉价介质来存储的,但是这种介质的缺点在于存取和访问速度太慢。Google不久前推出的云存储服务GoogleCloudStorageNearline较好地解决了这个问题。

?设计原则

不过Facebook团队决定用全新的角度去审视问题,他们从头开始,以端到端的方式重新设计了软硬件。1)节能降耗

在这套以存储为核心的ColdStorageSystem中,存储资源是按需启动的,同时摒弃了冗余发电机或备用电池等以提高能效。由于coldstorage采用的是低端商品化硬盘,硬件方面的约束要求进行命令批处理要非常小心,并且需要牺牲时延以换取效能。其对物理盘的存取是以平均故障间隔时间为基础控制硬盘的忙闲度(占空比)的。

2)智能管理

由于前面为了省电降低成本舍弃了备用电,这就要求软件任何时候都能应对哪怕是最小的电力中断,避免出现数据丢失的情况。

此外,数据还要具备持久性并保证完整性。为了保证持久性,系统设计时每一层面都要考虑持久性,消除单点故障,以尽可能少的步骤恢复整个系统,ColdStorage甚至连单独管理元数据的系统都是可有可无。也就是说,数据本身即可自我描述,不需要借助外部就能够辅助进行恢复。这么做的原因在于coldstorage是其他系统数据丢失情况下的 一道防线了。

3)面向未来

考虑到Facebook的数据设计时还需要考虑未来。很多系统在规模扩大或者利用率上升时往往就会性能下降或出问题,所以Facebook的这套系统一开始设计时就得考虑如何避免这一问题。

Facebook在Prineville的ColdStorage设施

基于上述考虑,目前Facebook已经在Prineville及Forest两个中心建设了两套coldstorage系统,里面存放着数百PB(万)的数据。不过如此的高容量其能耗仅为传统存储解决方案的1/4。而且跟一般系统不一样的是,这套系统的性能并不会随着规模扩大而下降,恰恰相反,系统越大性能反而越佳。 一点值得







































庆国庆中科白癜风迎专家
白癜风医院好不好



转载请注明:http://www.xxcyfilter.com/cxrs/7403.html