HDFS學習筆記4 -- Centralized Cache技術

  對於高頻率使用的數據,用戶能夠將其放人某文件夾,而後向各個DataNode發出指示將其中的數據緩存在內存裏。這種狀況下,用戶還能夠利用一組zero-copy的API,同時因爲再也不須要反覆驗證數據完整性,能夠顯著提升計算效率。緩存

  各DataNode的緩存由NameNode統一管理,週期性地向後者發送cache report。NameNode週期性地查詢本身的緩存指令集(Set of cache directives)來決定須要將哪些塊緩存或解除緩存。內存

  每條緩存指令(Cache directive)能夠定義一條須要被緩存路徑,若是指定的是文件夾,則只有其中第一級的文件能被緩存。指令中還能夠指定一些額外的參數,如複製係數和過時時間等。資源

  緩存池(Cache pool)是一個管理單元的概念,對於一組緩存指令集,對不用的用戶進行指令的讀,寫,添加,刪除等權限管理功能。同時還能夠用於資源管理,如規定最大緩存量。還能夠提供一些緩存數據的統計信息。另外,還能夠爲它的全部cache設置一個最大生存時間。效率

  目前只支持文件和文件夾級的緩存,未來可能會支持文件塊及子塊級的緩存。權限

相關文章
相關標籤/搜索