Facebook升級了Flashcache開源工具,讓管理員從配置了PCIe閃存卡的廉價磁盤陣列中獲得更高性能。
Flashcache工具現在升級到了3.0版本。該工具讓Facebook利用PCIe閃存卡上的高性能緩存加速訪問重要數據,不需要花費高昂的成本使用全閃存陣列。
Flashcache是一項回寫塊緩存技術,被部署為一個Linux內核設備映射的目標,使得將通用系統(tǒng)用于應對高流量應用成為一件簡單的事情。
企業(yè)級閃存加上大規(guī)模陣列也許對那些希望構建多TB、需要網絡訪問延遲系統(tǒng)的人來說是有吸引力的,它不需要重寫軟件以發(fā)揮其優(yōu)點,因此在少數幾臺設備上的投資要遠遠低于把所有東西都放在全閃存上的投資,Facebook公司數據工程師Mituzas這樣表示。
Flashcache 3.0提供了更好的讀寫分布,調節(jié)了磁盤和閃存的容量大小,將熱數據更多地分散到閃存上,從而避免遇到瓶頸。Facebook還修改了它的閃存回收和寫效率技術,提供更加可預見的性能。
盡管最初是針對Facebook自己使用而設計的,但是這項開源技術已經得到了來自社區(qū)的廣泛青睞。Facebook數據工程師Domas Mituzas表示:“我們看到了社區(qū)方面圍繞Flashcache所做的努力——郵件列表、開源代碼提交、在數據庫領域的咨詢公司也開始提供對Flashcache的支持。”
Flashcache技術開發(fā)的下一個領域包括元數據重建以更有效地加速數據訪問,確保不會向緩存過量寫入,從而避免底層基礎設施被排隊寫入操作所淹沒。
Mituzas解釋說:“最后當我們擁有數TB緩存、每臺設備數十TB數據的時候,我們需要謹慎地平衡內存和CPU的使用。CPU更高效的算法將需要更高的成本。例如,增加更多元數據條目的指針或者時間標記,如果使用2TB緩存,一個系統(tǒng)頁就需要4GB的RAM……因為應用程序可以很好地利用它。”
但是值得注意的是,Facebook的工具并非適合所有人,因為在實現完全集成的自建堆棧之前,你需要具備一定的專業(yè)技術和規(guī)模。
Mituzas表示:“從昂貴的技術轉換到廉價的技術,這需要大量的軟件相關的工作——這在大規(guī)模范圍內來講會節(jié)約很多成本,另一方面,就需要更強大的存儲設備,這樣就能在以存儲為主導的系統(tǒng)設計方面走得更快。”