海量小文件存儲系統(tǒng)的研究與實現(xiàn)
發(fā)布時間:2023-05-19 00:38
隨著web2.0技術(shù)的普及和飛速發(fā)展,互聯(lián)網(wǎng)數(shù)據(jù)出現(xiàn)了爆炸性的增長,與之而來的是如何管理和利用如此大規(guī)模的數(shù)據(jù)信息,為此,眾多研究機構(gòu)和公司都提出了各自的分布式數(shù)據(jù)存儲的解決方案。其中影響最大的莫過于開源的HDFS(Hadoop Distributed FileSystem),這項技術(shù)已得到學術(shù)界和工業(yè)界的認可,并被廣泛應用開來。但是,HDFS技術(shù)一直存在著對于海量小文件不支持這一弊端,制約著HDFS技術(shù)的進一步發(fā)展。本文重在研究圖片檢索系統(tǒng)和中華字庫工程中的海量小文件存儲問題,針對這兩個項目的需求,為切實解決問題,最終選擇基于HDFS搭建海量小文件存儲系統(tǒng)。以分析HDFS的結(jié)構(gòu)特點為切入點,探討其對海量小文件支持不理想的原因,探索分層索引方法來解決這一弊端。分層索引方法是一種基于小文件合并的方法,主要包括下邊五個方面的內(nèi)容。第一,分層索引方法通過將小文件合并為大文件,減少系統(tǒng)中存儲文件的數(shù)目,達到降低NameNode內(nèi)存開銷的目的。第二,分層索引方法在合并中會產(chǎn)生出兩個層次的索引文件,并通過分布式存儲和集中存儲相結(jié)合的方法管理索引文件。第三,分層索引方法將索引文件預加載到內(nèi)存中,減少...
【文章頁數(shù)】:58 頁
【學位級別】:碩士
【文章目錄】:
摘要
ABSTRACT
1 緒論
1.1 研究背景
1.2 研究內(nèi)容
2 分析
2.1 海量小文件存取的應用需求
2.2 海量小文件存儲系統(tǒng)的性能需求
2.3 主流分布式文件系統(tǒng)
2.3.1 Lustre文件系統(tǒng)
2.3.2 MogileFS文件系統(tǒng)
2.3.3 FastDFS文件系統(tǒng)
2.3.4 TFS文件系統(tǒng)
2.3.5 HDFS文件系統(tǒng)
2.3.6 文件系統(tǒng)選擇
2.4 基于HDFS的海量小文件優(yōu)化方法
2.4.1 HBase
2.4.2 基于小文件合并成大文件方法
2.5 多Namenode方法
2.6 本章小結(jié)
3 分層索引方法設計
3.1 HDFS存儲小文件的問題
3.1.1 存儲耗時過長
3.1.2 內(nèi)存開銷過大
3.2 分層索引方法的設計思路
3.3 小文件合并機制與索引文件的結(jié)構(gòu)
3.3.1 小文件合并機制
3.3.2 索引文件的存儲結(jié)構(gòu)
3.4 數(shù)據(jù)文件內(nèi)容動態(tài)增加機制
3.5 索引文件存儲和預加載機制
3.5.1 索引文件存儲
3.5.2 索引文件預加載
3.6 數(shù)據(jù)預取機制
3.7 分層索引方法與其他小文件合并方法的比較
3.8 本章小結(jié)
4 基于分層索引方法的海量小文件存儲系統(tǒng)實現(xiàn)
4.1 系統(tǒng)架構(gòu)
4.2 小文件合并和索引存儲機制的實現(xiàn)
4.2.1 小文件合并機制的實現(xiàn)
4.2.2 索引文件存儲機制
4.3 數(shù)據(jù)文件內(nèi)容動態(tài)增加機制的實現(xiàn)
4.3.1 NameNode端元信息創(chuàng)建流程
4.3.2 DataNode端數(shù)據(jù)文件創(chuàng)建流程
4.3.3 NameNode與DataNode的改進
4.4 索引文預加載機制的實現(xiàn)
4.5 存儲系統(tǒng)操作流程
4.5.1 小文件存儲流程
4.5.2 小文件讀取流程
4.5.3 小文件刪除流程
4.6 本章小結(jié)
5 系統(tǒng)性能評測與分析
5.1 實驗環(huán)境
5.2 實驗數(shù)據(jù)集
5.3 實驗設計
5.3.1 實驗測試指標
5.3.2 實驗過程
5.4 實驗對比
5.4.1 NameNode和DataNode內(nèi)存使用對比
5.4.2 小文件存儲性能對比
5.4.3 小文件讀取性能對比
5.4.4 對分層索引方法的分析
5.5 本章小結(jié)
6 總結(jié)與展望
6.1 論文工作總結(jié)
6.2 下一步工作展望
參考文獻
致謝
本文編號:3819313
【文章頁數(shù)】:58 頁
【學位級別】:碩士
【文章目錄】:
摘要
ABSTRACT
1 緒論
1.1 研究背景
1.2 研究內(nèi)容
2 分析
2.1 海量小文件存取的應用需求
2.2 海量小文件存儲系統(tǒng)的性能需求
2.3 主流分布式文件系統(tǒng)
2.3.1 Lustre文件系統(tǒng)
2.3.2 MogileFS文件系統(tǒng)
2.3.3 FastDFS文件系統(tǒng)
2.3.4 TFS文件系統(tǒng)
2.3.5 HDFS文件系統(tǒng)
2.3.6 文件系統(tǒng)選擇
2.4 基于HDFS的海量小文件優(yōu)化方法
2.4.1 HBase
2.4.2 基于小文件合并成大文件方法
2.5 多Namenode方法
2.6 本章小結(jié)
3 分層索引方法設計
3.1 HDFS存儲小文件的問題
3.1.1 存儲耗時過長
3.1.2 內(nèi)存開銷過大
3.2 分層索引方法的設計思路
3.3 小文件合并機制與索引文件的結(jié)構(gòu)
3.3.1 小文件合并機制
3.3.2 索引文件的存儲結(jié)構(gòu)
3.4 數(shù)據(jù)文件內(nèi)容動態(tài)增加機制
3.5 索引文件存儲和預加載機制
3.5.1 索引文件存儲
3.5.2 索引文件預加載
3.6 數(shù)據(jù)預取機制
3.7 分層索引方法與其他小文件合并方法的比較
3.8 本章小結(jié)
4 基于分層索引方法的海量小文件存儲系統(tǒng)實現(xiàn)
4.1 系統(tǒng)架構(gòu)
4.2 小文件合并和索引存儲機制的實現(xiàn)
4.2.1 小文件合并機制的實現(xiàn)
4.2.2 索引文件存儲機制
4.3 數(shù)據(jù)文件內(nèi)容動態(tài)增加機制的實現(xiàn)
4.3.1 NameNode端元信息創(chuàng)建流程
4.3.2 DataNode端數(shù)據(jù)文件創(chuàng)建流程
4.3.3 NameNode與DataNode的改進
4.4 索引文預加載機制的實現(xiàn)
4.5 存儲系統(tǒng)操作流程
4.5.1 小文件存儲流程
4.5.2 小文件讀取流程
4.5.3 小文件刪除流程
4.6 本章小結(jié)
5 系統(tǒng)性能評測與分析
5.1 實驗環(huán)境
5.2 實驗數(shù)據(jù)集
5.3 實驗設計
5.3.1 實驗測試指標
5.3.2 實驗過程
5.4 實驗對比
5.4.1 NameNode和DataNode內(nèi)存使用對比
5.4.2 小文件存儲性能對比
5.4.3 小文件讀取性能對比
5.4.4 對分層索引方法的分析
5.5 本章小結(jié)
6 總結(jié)與展望
6.1 論文工作總結(jié)
6.2 下一步工作展望
參考文獻
致謝
本文編號:3819313
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/3819313.html
最近更新
教材專著