Responsive image
博碩士論文 etd-0807112-115541 詳細資訊
Title page for etd-0807112-115541
論文名稱
Title
植基於YCSB系統之叢集資料庫效能分析
Performance Analysis of Cluster Databases Base on YCSB System
系所名稱
Department
畢業學年期
Year, semester
語文別
Language
學位類別
Degree
頁數
Number of pages
94
研究生
Author
指導教授
Advisor
召集委員
Convenor
口試委員
Advisory Committee
口試日期
Date of Exam
2012-07-20
繳交日期
Date of Submission
2012-08-07
關鍵字
Keywords
Cassandra、MongoDB、HBase、NoSQL、YCSB
YCSB, Cassandra, HBase, MongoDB, NoSQL
統計
Statistics
本論文已被瀏覽 5716 次,被下載 2298
The thesis/dissertation has been browsed 5716 times, has been downloaded 2298 times.
中文摘要
資料庫為現代應用不可缺少的部分,而資料庫的演進從SQL的RDBMS開始邁向新的世代,在經過Web2.0時代的來臨,面臨大量資料的傳送、頻繁的寫入操作。以往的ACID架構,開始出現質疑的聲音,是否原本的一致性,已經不適應在這個時代中。本論文利用實驗區分SQL與NoSQL的差異性。針對SQL為何無法在這場Web2.0戰役中取勝。同時針對目前較受注目的NoSQL (Cassandra、MongoDB與HBase),做操作的效能分析,區分這些資料庫擅長的運作。而實驗內容,則是主要透過YCSB的設計,嘗試已不同的使用方式,搭配不同的workload找出各資料庫所適合的應用環境,以及各資料庫容量的差異性和其特質。讓使用者可以當作一個選擇資料庫的參考。
Abstract
Database is the important part of modern application. From SQL to RDBMS,database moved to frequently transmit and operate lots of data. On ACID, it is focus on the consistence, but it does not suit right now. In the proposed article, we use YCSB to try some different workloads and the special of Cassandra, MongoDB, HBase, and MySQL Cluster to find the difference between SQL and NoSQL.
In addition, we also analyze the performance of the four operations (insert, update, scan, and read) in Cassandra, MongoDB, and HBase, and simulate some conditions. Those test supplies the reference for user to select the database.
目次 Table of Contents
致謝 i
Abstract ii
摘要 iii
目錄 iv
圖目錄 vii
表目錄 ix
1.序論 1
1.1 研究背景 1
1.2 相關研究 2
1.3 研究動機與目的 4
1.4 研究方法與步驟 5
1.4.1 研究方法 5
1.4.2 研究步驟 7
1.5 章節介紹 8
2.資料庫介紹 9
2.1 資料庫簡介 9
2.1.1 ACID、BASE與CAP理論 10
2.2 關聯式資料庫 14
2.2.1 MySQL Cluster 14
2.3 非關聯式資料庫 16
2.3.1 HBase 簡介 18
2.3.2 MongoDB簡介 24
2.3.3 Cassandra簡介 29
3.YCSB Benchmarking介紹 32
3.1 YCSB簡介 34
3.2 YCSB使用方式 37
4.系統設計與實作說明 39
4.1 軟體介紹 39
4.2 系統架構設計 40
4.3 系統實作說明 41
5.應用實例之效能分析 44
5.1 資料庫儲存機制 44
5.1.1 MySQL Cluster儲存機制 44
5.1.2 Cassandra儲存機制 47
5.1.3 HBase儲存機制 49
5.1.4 MongoDB儲存機制 50
5.1.5 各資料庫儲存容量測試 52
5.1.5.1 實驗測試1 52
5.1.5.2 實驗測試2 54
5.2 SQL與NoSQL差異性 55
5.2.1 基本workload分析比較 55
5.2.2 測試壅塞狀態 59
5.3 NoSQL分析比較 62
5.3.1 基本操作分析比較 62
5.3.2 應用之效能分析 67
5.3.2.1 金融報價應用之效能分析 68
5.3.2.2 圖書館書籍查詢應用之效能分析 69
5.3.2.3 社群網路應用之效能分析 70
5.3.2.4 選課系統應用之效能分析 71
5.4 資料庫與RAMDisk的相遇 72
5.4.1 RAMDisk介紹 72
5.4.2 執行於RAMDisk的資料庫效能分析 72
5.5 Aggregation function之效能分析 77
6.結論與未來展望 80
7.參考文獻 81
參考文獻 References
[1] E. F. Codd, "A relational model of data for large shared data banks," Commun. ACM, vol. 26, pp. 64-69, 1983.
[2] T. Haerder and A. Reuter, "Principles of transaction-oriented database recovery," ACM Comput. Surv., vol. 15, pp. 287-317, 1983.
[3] D. Reinsel, C. Chute, W. Schlichting, J. McArthur, S. Minton, I. Xheneti, A. Toncheva, and A. Manfrediz, The Expanding Digital Universe: A Forecast of Worldwide Information Growth through 2010: An IDC White Paper, March 2007.
[4] E. A. Brewer, "Towards robust distributed systems," in POCC'00, Portland, Oregon, United States, 2000.
[5] S. Gilbert and N. Lynch, "Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services," SIGACT News, vol. 33, pp. 51-59, 2002.
[6] B. F. Cooper, A. Silberstein, E. Tam, R. Ramakrishnan, and R. Sears, "Benchmarking cloud serving systems with YCSB," in ACM SOCC'10, Indianapolis, Indiana, USA, 2010.
[7] R. yahoo. (2012). YAHOO! Cloud Serving Benchmark. Available: http://research.yahoo.com
[8] Github. (2012). YCSB. Available: https://github.com/brianfrankcooper/YCSB
[9] S. Edlich. (2012). NoSQL,your ultimate guide to the non-relational universe! Available: http://nosql-database.org
[10] R. Cattell, "Scalable SQL and NoSQL data stores," SIGMOD Rec., vol. 39, pp. 12-27, 2011.
[11] R. Diana. (February 2012). NoSQL Job Trends. Available: http://regulargeek.com
[12] E. Hewitt, Cassandra The Definitive Guide: O’Reilly Media, 2010.
[13] K. Chodorow and M. Dirolf, MongoDB: The Definitive Guide: O’Reilly Media, September 2010.
[14] L. George, HBase: The Definitive Guide: O’Reilly Media, Sep 20, 2011.
[15] C. Bell, M. Kindahl, L. Thalmann, and M. Callaghan, MySQL High Availability: Tools for Robust Data Centers: O’Reilly Media, 2010.
[16] M. Stonebraker, "SQL databases v. NoSQL databases," Commun. ACM, vol. 53, pp. 10-11, 2010.
[17] D. Bartholomew, "SQL vs. NoSQL," Linux J., vol. 2010, p. 4, 2010.
[18] L. Okman, N. Gal-Oz, Y. Gonen, E. Gudes, and J. Abramov, "Security Issues in NoSQL Databases," in IEEE TrustCom-11, Changsha,China, 2011.
[19] N. Leavitt, "Will NoSQL Databases Live Up to Their Promise?," Computer, vol. 43, pp. 12-14, 2010.
[20] R. Lehmann, "Redis in the Yahoo! Cloud Serving Benchmark, Hasso Plattner Institut," PhD thesis, Sep. 2011.
[21] A. Silberstein, C. Jianjun, D. Lomax, B. McMillan, M. Mortazavi, P. P. S. Narayan, R. Ramakrishnan, and R. Sears, "PNUTS in Flight: Web-Scale Data Serving at Yahoo," Internet Computing, IEEE, vol. 16, pp. 13-23, 2012.
[22] E. Anderson, X. Li, M. Shah, J. Tucek, and J. Wylie, "What consistency does your key-value store actually provide?," in HotDep'10, Vancouver, BC, Canada, 2010.
[23] T. Dory, B. Mejias, P. V. Roy, and N.-L. Tran, "Measuring Elasticity for Cloud Databases," in Clound computing 2011, Rome, Italy, Sep. 2011.
[24] B. G. Tudorica and C. Bucur, "A comparison between several NoSQL databases with comments and notes," in RoEduNet, Lasi, Romania, 2011.
[25] Y. Shi, X. Meng, J. Zhao, X. Hu, B. Liu, and H. Wang, "Benchmarking cloud-based data management systems," in CloudDB'10, Toronto, ON, Canada, 2010.
[26] S. Patil, M. Polte, K. Ren, W. Tantisiriroj, L. Xiao, J. Lopez, G. Gibson, A. Fuchs, and B. Rinaldi, "YCSB++: benchmarking and performance debugging advanced features in scalable table stores," in ACM SOCC'11, Cascais, Portugal, 2011.
[27] TPC. (2012). Transaction Processing Performance Council. Available: http://www.tpc.org
[28] 曾守正, "資料庫系統的回顧與未來研究發展," PhD thesis,元智大學, 1996.
[29] J. Browne. (2009). Brewer’s CAP Theorem. Available: http://www.julianbrowne.com/article/viewer/brewers-cap-theorem
[30] Cassandra. (2012). Available: http://cassandra.apache.org
[31] MySQL. (2012). Available: http://www.mysql.com
[32] HBase. Available: http://hbase.apache.org
[33] HBase技術介紹. Available: http://www.searchtb.com/2011/01/understanding-hbase.html
[34] MongoDB. (2012). Available: http://www.mongodb.org
[35] P. Gerum, K. Yaghmour, J. Masters, and G. B. Yossef, Building Embedded Linux Systems,2ed: O'REILLY, 2009.
[36] R. Natarajan. (2008). Overview of RAMFS and TMPFS on Linux. Available: http://www.thegeekstuff.com/2008/11/overview-of-ramfs-and-tmpfs-on-linux/
電子全文 Fulltext
本電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。
論文使用權限 Thesis access permission:校內校外完全公開 unrestricted
開放時間 Available:
校內 Campus: 已公開 available
校外 Off-campus: 已公開 available


紙本論文 Printed copies
紙本論文的公開資訊在102學年度以後相對較為完整。如果需要查詢101學年度以前的紙本論文公開資訊,請聯繫圖資處紙本論文服務櫃台。如有不便之處敬請見諒。
開放時間 available 已公開 available

QR Code