Traditionally, a DBMS kernel has recovery, concurrency control and access method code tightly bound together. We factor the kernel into a transactional component (TC) that knows about transactions and their “logical” concurrency control and undo/redo recovery, and a data component (DC) that knows about the access methods and supports a record oriented interface with atomic operations. The interaction of the components is governed by a contract or covenant.
- David Lomet, Kostas Tzoumas, and Michael Zwilling, Implementing Performance Competitive Logical Recovery, Very Large Data Bases Endowment Inc., 29 August 2011
- David Lomet, Transactions: From Local Atomicity to Atomicity in the Cloud, in Lecture Notes on Computer Science 6875, Springer Verlag, August 2011
- Justin J. Levandoski, David Lomet, Mohamed F. Mokbel, and Kevin Keliang Zhao, Deuteronomy: Transaction Support for Cloud Data, in Conference on Innovative Data Systems Research (CIDR), www.crdrdb.org, 12 January 2011
- David B. Lomet and Mohamed Mokbel, Locking Key Ranges with Unbundled Transaction Services, in VLDB, Very Large Data Bases Endowment Inc., August 2009
- David B. Lomet, Alan Fekete, Gerhard Weikum, and Michael J. Zwilling, Unbundling Transaction Services in the Cloud, in CIDR, January 2009
- Justin Levandoski, David Lomet, and Sudipta Sengupta, The Bw-Tree: A B-tree for New Hardware, in 2013 IEEE 29th International Conference on Data Engineering (ICDE), International Conference on Data Engineering, 8 April 2013