Login

Detecting and Tolerating Byzantine Faults in Database Systems

Show simple item record

dc.contributor.advisor Barbara Liskov en_US
dc.contributor.author Vandiver, Benjamin Mead en_US
dc.contributor.other Programming Methodology en_US
dc.date.accessioned 2008-07-02T06:00:10Z
dc.date.available 2008-07-02T06:00:10Z
dc.date.issued 2008-06-30 en_US
dc.identifier.other MIT-CSAIL-TR-2008-040 en_US
dc.identifier.uri http://hdl.handle.net/1721.1/41873
dc.description.abstract This thesis describes the design, implementation, and evaluation of a replication scheme to handle Byzantine faults in transaction processing database systems. The scheme compares answers from queries and updates on multiple replicas which are off-the-shelf database systems, to provide a single database that is Byzantine fault tolerant. The scheme works when the replicas are homogeneous, but it also allows heterogeneous replication in which replicas come from different vendors. Heterogeneous replicas reduce the impact of bugs and security compromises because they are implemented independently and are thus less likely to suffer correlated failures. A final component of the scheme is a repair mechanism that can correct the state of a faulty replica, ensuring the longevity of the scheme.The main challenge in designing a replication scheme for transaction processingsystems is ensuring that the replicas state does not diverge while allowing a high degree of concurrency. We have developed two novel concurrency control protocols, commit barrier scheduling (CBS) and snapshot epoch scheduling (SES) that provide strong consistency and good performance. The two protocols provide different types of consistency: CBS provides single-copy serializability and SES provides single-copy snapshot isolation. We have implemented both protocols in the context of a replicated SQL database. Our implementation has been tested with production versions of several commercial and open source databases as replicas. Our experiments show a configuration that can tolerate one faulty replica has only a modest performance overhead (about 10-20% for the TPC-C benchmark). Our implementation successfully masks several Byzantine faults observed in practice and we have used it to find a new bug in MySQL. en_US
dc.description.provenance Submitted by CSAIL Importer (publications-dspace@csail.mit.edu) on 2008-07-02T06:00:08Z No. of bitstreams: 2 MIT-CSAIL-TR-2008-040.pdf: 788792 bytes, checksum: 101731dcd701ec68b5a37169eec6b903 (MD5) MIT-CSAIL-TR-2008-040.ps: 73870 bytes, checksum: 9b51f0716d8060f15c2a0756d3fea8b2 (MD5) en
dc.description.provenance Made available in DSpace on 2008-07-02T06:00:10Z (GMT). No. of bitstreams: 2 MIT-CSAIL-TR-2008-040.pdf: 788792 bytes, checksum: 101731dcd701ec68b5a37169eec6b903 (MD5) MIT-CSAIL-TR-2008-040.ps: 73870 bytes, checksum: 9b51f0716d8060f15c2a0756d3fea8b2 (MD5) Previous issue date: 2008-06-30 en
dc.format.extent 174 p. en_US
dc.relation Massachusetts Institute of Technology Computer Science and Artificial Intelligence Laboratory en_US
dc.relation en_US
dc.title Detecting and Tolerating Byzantine Faults in Database Systems en_US

Files in this item

Files Size Format
MIT-CSAIL-TR-2008-040.pdf 788.7Kb application/pdf
MIT-CSAIL-TR-2008-040.ps 73.87Kb application/postscript

This item appears in the following Collection(s)

Show simple item record

Search DSpace@MIT


Advanced Search

Browse

My Account

Links