簡易檢索 / 詳目顯示

研究生: 蘇晏良
Su, Yen-Liang
論文名稱: TSorter: 一個基於衝突偵測的雲端交易處理系統
TSorter: A Conflict-Aware Transaction Processing System for Clouds
指導教授: 謝錫堃
Shieh, Ce-Kuen
共同指導教授: 張志標
Chang, Jyh-Biau
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 電腦與通信工程研究所
Institute of Computer & Communication Engineering
論文出版年: 2010
畢業學年度: 98
語文別: 英文
論文頁數: 35
中文關鍵詞: 雲端運算交易處理資料庫
外文關鍵詞: cloud computing, database, transaction processing
相關次數: 點閱:89下載:2
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 雲端運算是這幾年很流行的分散式系統,雲端運算的最大好處在於極佳的可擴展性。可是大部分的雲端儲存系統都缺乏對於交易處理的完整支援,但是日常生活中有很多應用例如訂票系統和電子商務需要交易處理。目前有一些雲端運算基礎的交易處理系統被提出,但這些系統在處理衝突密集的工作負載時會有低產出率。所以這篇論文提出一個雲端運算基礎的交易處理系統。因為我們的系統採用衝突感知的排程,所以這個系統不論是衝突密集或衝突不密集的工作負載都可以取得高產出率。處此之外,該系統也透過資料快取與資料局部性感知的排程來降低輸入與輸出的負荷以提升效能。最後,我們的實驗證明我們的系統不論是衝突密集或不密集的工作負載都可以取得高產出率。

    In recent years, cloud computing has been more and more popular. Companies and organizations benefit from the high scalability of cloud computing. However, most available cloud storage systems are lacking in providing the fully transaction processing support while many daily-use applications such as ticket booking systems and e-businesses really require the transaction processing support. Although, some cloud-based transaction processing systems have been proposed, they experience the low throughput when a conflict-intensive workload is performed. Therefore, this paper presents a new cloud-based transaction processing system, designated as TSorter, in which both the conflict-free and the conflict-intensive workload are concerned. TSorter introduces the conflict-aware scheduling for achieving the high throughput when the conflict-intensive workload is performed. Moreover, it also introduces the data caching and the affinity-based scheduling for improve the per-nod performance. The experimental result shows that TSorter achieves the high throughput, irrespective of the workload types (i.e. the conflict-intensive workload or the conflict-free workload).

    Chapter 1 Introduction 1 Chapter 2 Related work 6 2.1. Cloud-Based Transaction Processing System 6 2.2. In-Memory Transaction Processing System 7 2.3. Transaction Scheduler 8 Chapter 3 Design 9 3.1. Architecture 9 3.2. Transaction Clustering 11 3.2.1. Conflict Detection 12 3.2.2. Affinity Detection 13 3.2.3. Transaction Set Selection 15 3.3. Transaction Dispatcher 17 Chapter 4 Implementation 19 4.1. TMaster 20 4.2. Transaction Processing Unit 22 Chapter 5 Performance Evaluation 24 5.1. Experiment Setup 24 5.2. Conflict-Intensive Workload 26 5.3. Conflict-Free Workload 29 Chapter 6 Conclusion and Future Work 32 Reference 33

    1. LiveJournal's Backend: A history of scaling. Available from: http://www.danga.com/words/2005_oscon/oscon-2005.pdf.
    2. Linux Apache MySQL PHP (LAMP). Available from: http://en.wikipedia.org/wiki/LAMP_(software_bundle).
    3. Foster, I., et al., Cloud computing and grid computing 360-degree compared. ArXiv e-prints, 2008. 901: p. 131.
    4. Chang, F., et al., Bigtable: A Distributed Storage System for Structured Data. ACM Trans. Comput. Syst., 2008. 26(2): p. 1-26.
    5. HBase. Available from: http://hbase.apache.org/.
    6. Bala, V., E. Duesterwald, and S. Banerjia, Dynamo: a transparent dynamic optimization system, in Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation. 2000, ACM: Vancouver, British Columbia, Canada. p. 1-12.
    7. Cassandra. Available from: http://cassandra.apache.org/.
    8. MySQL. Available from: http://www.mysql.com/.
    9. Amazon Simple Storage Service. Available from: http://aws.amazon.com/s3/.
    10. Amazon SimpleDB.
    11. Wei, Z., G. Pierre, and C. Chi, Scalable transactions for web applications in the cloud. Euro-Par 2009 Parallel Processing, 2009: p. 442-453.
    12. Wei, Z., G. Pierre, and C. Chi, CloudTPS: Scalable transactions for Web applications in the cloud. 2010.
    13. Transactional HBase (THBase). Available from: http://hbase.apache.org/docs/r0.20.5/api/org/apache/hadoop/hbase/client/transactional/package-summary.html.
    14. Das, S., D. Agrawal, and A.E. Abbadi, G-Store: a scalable data store for transactional multi key access in the cloud, in Proceedings of the 1st ACM symposium on Cloud computing. 2010, ACM: Indianapolis, Indiana, USA. p. 163-174.
    15. Cooper, B.F., et al., Benchmarking cloud serving systems with YCSB, in Proceedings of the 1st ACM symposium on Cloud computing. 2010, ACM: Indianapolis, Indiana, USA. p. 143-154.
    16. Kung, H.T. and J.T. Robinson, On optimistic methods for concurrency control. ACM Trans. Database Syst., 1981. 6(2): p. 213-226.
    17. Karger, D., et al., Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the World Wide Web, in Proceedings of the twenty-ninth annual ACM symposium on Theory of computing. 1997, ACM: El Paso, Texas, United States. p. 654-663.
    18. MySQL Cluster. Available from: http://www.mysql.com/products/database/cluster/.
    19. VoltDB. Available from: http://voltdb.com/.
    20. Kallman, R., et al., H-store: a high-performance, distributed main memory transaction processing system. Proc. VLDB Endow., 2008. 1(2): p. 1496-1499.
    21. Jones, E.P.C., D.J. Abadi, and S. Madden, Low overhead concurrency control for partitioned main memory databases, in Proceedings of the 2010 international conference on Management of data. 2010, ACM: Indianapolis, Indiana, USA. p. 603-614.
    22. Amza, C., A.L. Cox, and W. Zwaenepoel, Conflict-aware scheduling for dynamic content applications, in Proceedings of the 4th conference on USENIX Symposium on Internet Technologies and Systems - Volume 4. 2003, USENIX Association: Seattle, WA. p. 6-6.
    23. Zuikevi i t , V. and F. Pedone. Conflict-aware load-balancing techniques for database replication. 2008: ACM.
    24. Ghemawat, S., H. Gobioff, and S.-T. Leung, The Google file system, in Proceedings of the nineteenth ACM symposium on Operating systems principles. 2003, ACM: Bolton Landing, NY, USA. p. 29-43.
    25. Dean, J. and S. Ghemawat, MapReduce: simplified data processing on large clusters. Commun. ACM, 2008. 51(1): p. 107-113.
    26. Gilbert, S. and N. Lynch, Brewer's conjecture and the feasibility of consistent, available, partition-tolerant web services. SIGACT News, 2002. 33(2): p. 51-59.
    27. The Example of the Key Enumeration in Google App Engine. Available from: http://code.google.com/intl/en/appengine/docs/python/datastore/transactions.html.
    28. MemcacheDB. Available from: http://memcachedb.org/.
    29. Memcached. Available from: http://memcached.org/.
    30. Python. Available from: http://www.python.org/.
    31. Tornado Web Server. Available from: http://www.tornadoweb.org/.
    32. The C10K Problem. Available from: http://www.kegel.com/c10k.html.
    33. Hadoop. Available from: http://hadoop.apache.org/.
    34. Apache Thrift. Available from: http://incubator.apache.org/thrift/.
    35. Skip List.
    36. Java. Available from: http://www.java.com/.

    下載圖示 校內:2013-07-05公開
    校外:2013-07-05公開
    QR CODE