存储 频道

巧用缓存 Facebook升级Flashcache至3.0

  【IT168 资讯】Facebook为Linux推出了磁盘缓存软件Flashcache 3.0,该软件可以利用闪存改进性能。

  作为社交媒体巨头,Facebook是企业闪存的早期拥护者,且该公司采用固态存储技术为该社交网络的十亿用户提供响应式体验。类似Fusion-io PCIe闪存的硬件承担了大量性能提升人物,而Facebook也依靠软件做了大量性能优化。

  从2012年开始,Flashcache就作为Linux内核设备映射目标,在混合存储环境中启用了Facebook 改进数据库和应用性能。现在,在3.0版本中,Facebook在推动SSD方面又向前迈进了一大步。

  在Facebook的帖子中,生产数据库工程师Domas Mituzas指出,在使用了几个月的Flashcache 3.0后,他的团队成功将平均命中率从60%提升到了80%,磁盘运行率几乎减半。他将Flashcache描述为Facebook堆栈中的创建区块,Mituzas称这个新的分支已经运行在数以千计的Facebook服务器上,而且性能比Flashcache 1.x提升了不止一点点。

  “从我们最繁忙的系统来看,读取I/O降低了40%,写入I/O降低了75%,这让我们可以为十亿以上的用户提供跟高效的服务,”Mituzas称赞到。

  为了保持这些成果,Facebook从新的角度来看待读写分布。“我们的分析表明,磁盘上负责大部分写入任务的少数区域和读取区域的分布非常不平衡,”Mituzas说。

  我们改变了一系列的策略,希望能“在缓存上扩散热数据”。在此番言论之前,Mituzas还报道称“原来50%的缓存负责80%磁盘运行任务”。“在这一改变发生后,50%的缓存就只负责50%的磁盘运算了,”他补充道。“Facebook还优化了缓存淘汰运算法则,而且还有直观的脏数据淘汰方法。”

  随着最新版Flashcache的推出,将闪存整合到Facebook存储架构的工作在持续不断的进行中。Facebook使用新的元数据架构提升效率后,又开始着眼于支持若干TB缓存设备的下一代系统,这些设备是基于磁盘的存储,容量有几十TB,Mituzas说。Facebook还致力于精细粒度的锁定,以支持多个CPU同时进行数据访问。

0
相关文章