編者按:在Alluxio開源社區,越來越多高校研究人員使用Alluxio作為研究載體。本專欄將介紹一系列基於Alluxio的前沿研究工作。該系列的第一篇博客邀請到了香港科技大學余英豪博士撰寫介紹了他基於Alluxio的研究成果。本文不僅有技術介紹,還會分享他在開源軟體上開展研究的心得與經驗。
本文作者:余英豪
作者簡介:香港科技大學電子與計算機工程系博士研究生,專註於分散式內存系統的性能優化
導師:王威教授,Khaled Ben Letaief教授
特別鳴謝:感謝Alluxio PMC范斌博士以及南京大學顧榮老師的校閱、指正
隨著現代數據中心網路的大幅提速,傳統的HDFS提供的基於硬碟存儲的數據本地性變得越來越不重要 (鏈接1)。而同時對象存儲(Object Store,包括Amazon S3 和 OpenStack Swift等)作為更便宜和更容易水平擴展的數據存儲層系統,在廣泛發展的眾多大數據應用中越來越受到歡迎。由於硬碟的I/O速度仍遠低於內存讀寫,因此在大數據應用和對象存儲之間部署一個以Alluxio為代表的內存文件緩存層來緩存數據,可以有效提升整體的讀寫效率,並彌補網路帶寬受限場景下存儲與計算分離帶來的數據本地性問題。為了進一步提升內存緩存層的整體性能,本文揭示了內存緩存層中由於文件熱度不均導致的負載失衡的嚴重風險,並提出了一種選擇性熱點文件分割的策略來保障系統負載均衡。
常用鏈接
- Alluxio項目官網
- Alluxio Inc網站
- Alluxio在各大廠用例
- 關注Alluxio微信公眾號:Alluxio_China
1、負載均衡
研究表明,數據中心裡不同數據的訪問有顯著的熱度差異。當這些數據被緩存在內存層中時,極容易產生負載失衡的問題:一部分數據被高頻率地訪問,形成局部熱點(hot spot)。熱點機器的網路擁塞往往會成為數據讀寫的瓶頸;而另一部分訪問頻率較低的數據因為佔用緩存資源,導致資源不能更加優化地分配給熱點數據,進而影響內存資源的使用效率。