Date of Award

12-31-2014

Document Type

Campus Access Dissertation

Degree Name

Doctor of Philosophy (PhD)

Department

Computer Science

First Advisor

Patrick E. O'Neil

Second Advisor

Elizabeth J. O'Neil

Third Advisor

Dan A. Simovici

Abstract

Concurrency control provides multi-user access to a database system, while ensuring concurrent transactional correctness. Classical RDBMS products such as Oracle, DB2 and SQL Server have Disk Resident databases (DRDBs) with designs from the 1970s, whose data can only be read or updated after being brought into memory. Great reductions in memory price and ever-faster compute cycles have made DRDBs much less desirable for all but the largest databases. Study of Main Memory Database Systems (MMDBs) and their concurrency control algorithms is a current research effort. An advantage of MMDBs cited by early researchers was that execution of a transaction on a CPU in memory from start to finish would save all the work of disk I/O, locking, latching and coping with deadlocks. But until recently there was very little discussion of distributed MMDB transactions, needed when not all data is accessible at one computer.

This dissertation analyzes the performance bottlenecks of distributed transactions in an open-source multi-CPU shared-nothing MMDB VoltDB, which is based on an earlier academic MMDB H-Store. On each shared-nothing node, the transactions execute serially. The waits for the messages involved in distributed transactions seriously impact performance. We developed a low-overhead concurrency scheme that runs Prepares serially on each node so that new Prepares could run while old Prepares were waiting to commit. Possible conflicts are detected using Write locks but no Read locks. We also provide an Ordered Escrow Method, a variant of original Escrow that speeds up transactions doing incremental updates. We implemented these serializable concurrency schemes on VoltDB, and named this modified system CVoltDB. CVoltDB is the first DBMS providing an Escrow method to the transaction programmer. We performed measurements comparing VoltDB and CVoltDB performance showing significant performance improvement.

Comments

Free and open access to this Campus Access Dissertation is made available to the UMass Boston community by ScholarWorks at UMass Boston. Those not on campus and those without a UMass Boston campus username and password may gain access to this dissertation through resources like Proquest Dissertations & Theses Global or through Interlibrary Loan. If you have a UMass Boston campus username and password and would like to download this work from off-campus, click on the "Off-Campus UMass Boston Users" link above.

Share

COinS