NoSQL存儲系統(tǒng)的相關算法改進與性能測試
發(fā)布時間:2017-05-10 02:03
本文關鍵詞:NoSQL存儲系統(tǒng)的相關算法改進與性能測試,由筆耕文化傳播整理發(fā)布。
【摘要】:隨著云計算和大數據的興起,尤其是近幾年來海量級數據規(guī)模的應用不斷涌現,非結構化數據存儲和處理需求迅速增長,這些新的海量數據應用對數據存儲有了新的需求。同時傳統(tǒng)的關系型數據庫已經無法滿足Web2.0網站,特別是超大規(guī)模和高并發(fā)SNS類型的網站的需求,各大互聯(lián)網公司和網絡存儲公司對維護關系數據庫的成本越來越高。由于關系型數據庫的架構設計問題如數據結構單一、查詢過程相對復雜,暴露出一些無法克服的問題,因此急需一種新的存儲性能高的數據庫來補充甚至取代關系型數據庫。而NoSQL存儲系統(tǒng)則由于自身的優(yōu)勢,如高性能,,高可用性,可擴展性,數據模型靈活,得到了迅速發(fā)展,其非結構化分布式存儲系統(tǒng)的性能分析與調優(yōu)也成為了業(yè)界的熱點研究問題。 本文首先在查閱相關NoSQL理論技術的基礎上,從NoSQL數據庫的優(yōu)勢特點出發(fā),分析存儲系統(tǒng)設計和實現需要遵循的原則。通過研究目前主流的NoSQL數據庫存儲系統(tǒng),參考國外NoSQL產品的實現,設計并實現了一個基于NoSQL的存儲系統(tǒng),以及開發(fā)性能測試工具對系統(tǒng)進行了有效的性能分析與評測。本文的主要的研究內容如下: (1)通過對NoSQL數據模型的深入分析和研究,實現了基于key-value數據模型的存儲系統(tǒng),支持基本命令查詢,支持完成一組命令的事務機制,利用設計模式中的觀察者思想實現訂閱信息功能,支持key-value數據存儲在多個服務器集群等基本功能,并對系統(tǒng)中使用的API功能作了詳細的分析。 (2)深入分析研究了傳統(tǒng)NoSQL存儲系統(tǒng)中常用數據結構和算法存在的問題,通過改進和完善一些低效的數據結構和算法,提高存儲系統(tǒng)存儲效率和降低CPU消耗,重點研究和改進了一致性哈希算法,通過加入虛擬節(jié)點,解決了傳統(tǒng)NoSQL存儲系統(tǒng)中一致性哈希算法平衡性的問題。 (3)通過對存儲系統(tǒng)性能測試分析和設計,開發(fā)出基準性能測試工具menkv-benchmark,解決了NoSQL存儲系統(tǒng)測試設備不足和測試設備性能差異性問題,產生了一系列的測試結果,通過具體的測試數據對比證明系統(tǒng)的平均性能每秒可以處理15000個命令,性能高于GlobalsDB存儲系統(tǒng),從而證明了系統(tǒng)性能的可靠性和有效性。
【關鍵詞】:NoSQL 鍵值對 一致性哈希 性能測試
【學位授予單位】:武漢理工大學
【學位級別】:碩士
【學位授予年份】:2014
【分類號】:TP333;TP311.13
【目錄】:
- 摘要4-5
- Abstract5-9
- 第1章 緒論9-13
- 1.1 研究背景9-10
- 1.2 國內外研究現狀10-11
- 1.3 論文的主要研究工作11-12
- 1.4 論文組織結構12-13
- 第2章 NoSQL 相關技術分析13-18
- 2.1 NoSQL 和 SQL 的區(qū)別13-14
- 2.2 NoSQL 數據模型的選擇14-16
- 2.3 存儲系統(tǒng)讀寫要求16-17
- 2.4 本章小結17-18
- 第3章 NoSQL 存儲系統(tǒng)設計與實現18-37
- 3.1 鍵值對及基本命令19-24
- 3.1.1 Key-Value 鍵值對的設計19-20
- 3.1.2 基本命令的設計20-22
- 3.1.3 命令底層 API 設計22-24
- 3.2 事務機制24-30
- 3.2.1 事務機制的階段性25-27
- 3.2.2 事務執(zhí)行流程的實現27-29
- 3.2.3 事務的 ACID 性質29-30
- 3.3 觀察者模式30-33
- 3.3.1 訂閱通道的設計與實現31-32
- 3.3.2 發(fā)送信息到通道的設計與實現32-33
- 3.4 集群機制33-36
- 3.4.1 集群工作原理33-34
- 3.4.2 集群節(jié)點在線配置34-35
- 3.4.3 容錯機制35-36
- 3.5 本章小結36-37
- 第4章 存儲系統(tǒng)數據結構和算法分析37-47
- 4.1 字符串對象37-38
- 4.1.1 字符串改進數據結構37
- 4.1.2 字符串改進算法37-38
- 4.2 Bitmap 數據結構和算法分析38-40
- 4.2.1 Bitmap 數據結構38-39
- 4.2.2 算法應用分析39-40
- 4.3 一致性哈希算法40-46
- 4.3.1 基本案例場景40-41
- 4.3.2 一致性哈希算法的研究41-43
- 4.3.3 一致性哈希算法的改進43-46
- 4.4 本章小結46-47
- 第5章 NoSQL 存儲系統(tǒng)性能測試47-62
- 5.1 影響性能測試的因素47-49
- 5.2 傳統(tǒng)的 NoSQL 存儲系統(tǒng)測試49
- 5.3 性能測試工具設計與實現49-53
- 5.3.1 性能測試工具設計49-51
- 5.3.2 性能測試工具實現51-53
- 5.4 不同場景系統(tǒng)性能測試53-60
- 5.4.1 管道包裹命令測試53-55
- 5.4.2 網絡協(xié)議性能測試55-58
- 5.4.3 請求數量性能測試58-60
- 5.5 存儲系統(tǒng)性能對比分析60-61
- 5.6 本章小結61-62
- 第6章 總結與展望62-64
- 6.1 總結62
- 6.2 展望62-64
- 致謝64-65
- 參考文獻65-66
【參考文獻】
中國期刊全文數據庫 前4條
1 陳超;王亮;閆浩文;仇阿根;李玉祥;朱芳菲;;一種基于NoSQL的地圖瓦片數據存儲技術[J];測繪科學;2013年01期
2 黃秋蘭;程耀東;陳剛;;分布式存儲系統(tǒng)的哈希算法研究[J];計算機工程與應用;2014年01期
3 魏兵;姚敏;沈志榮;;Google Bigtable系統(tǒng)的可信性研究[J];信息網絡安全;2011年12期
4 涂振發(fā);孟令奎;張文;黃長青;;面向分布式GIS空間數據的Key-value緩存[J];武漢大學學報(信息科學版);2013年11期
中國博士學位論文全文數據庫 前1條
1 劉曉茜;云計算數據中心結構及其調度機制研究[D];中國科學技術大學;2011年
本文關鍵詞:NoSQL存儲系統(tǒng)的相關算法改進與性能測試,由筆耕文化傳播整理發(fā)布。
本文編號:353746
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/353746.html