Abstract
Traditional database systems rely upon a proven set of tools to guarantee ACID properties without compromising performance: a buffer manager to mediate the transfer of data between fast in-memory processing and slow disk-based persistent storage, latching and locking to coordinate concurrent access to data, and logging to enable the recovery, verification, and repair of committed data. These tools are built on code bases that are 10-30 years old and designed for hardware assumptions nearly the same age. Modern hardware technologies such as fast persistent memories and multicore break those assumptions, turning the traditional proven tools into the new bottlenecks. Our goal is to rethink the traditional tools so that they will not be bottlenecks. Here, we review some of the concurrency-related bottlenecks that face the modern transactional storage management system and survey state of the art techniques that allow these traditional tools to provide intended functionality without becoming bottlenecks.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Bayer, R., Schkolnick, M.: Concurrency of operations on B-trees. Acta Inf. 9, 1–21 (1977)
DeWitt, D., Katz, R., Olken, F., Shapiro, L., Stonebraker, M., Wood, D.: Implementation techniques for main memory database systems. SIGMOD, 1–8 (1984)
Graefe, G.: Write-optimized B-trees. In: VLDB, pp. 672–683 (2004)
Graefe, G.: Hierarchical locking in B-tree indexes. In: BTW, pp. 18–42 (2007)
Graefe, G.: A survey of B-tree locking techniques. ACM Trans. Database Syst. 35(3) (2010)
Graefe, G.: Modern B-tree techniques. Foundations and Trends in Databases (2011)
Graefe, G.: A survey of b-tree logging and recovery techniques. ACM TODS 37(1), 1:1–1:35 (2012)
Graefe, G., Kimura, H., Kuno, H.: Foster b-trees. ACM Transactions on Database Systems, TODS (2012)
Graefe, G., Stonecipher, R.: Efficient verification of B-tree integrity. In: BTW, pp. 27–46 (2009)
Harizopoulos, S., Abadi, D.J., Madden, S.R., Stonebraker, M.: OLTP through the looking glass, and what we found there. In: SIGMOD, Vancouver, Canada (2008)
Helland, P., Sammer, H., Lyon, J., Carr, R., Garrett, P., Reuter, A.: Group commit timers and high volume transaction systems. High Performance Transaction Systems, 301–329 (1989)
Jaluta, I., Sippu, S., Soisalon-Soininen, E.: Concurrency control and recovery for balanced B-link trees. VLDB J. 14, 257–277 (2005)
Johnson, R., Pandis, I., Ailamaki, A.: Improving OLTP scalability using speculative lock inheritance. PVLDB, 479–489 (2009)
Johnson, R., Pandis, I., Hardavellas, N., Ailamaki, A., Falsafi, B.: Shore-MT: a scalable storage manager for the multicore era. In: EDBT, pp. 24–35 (2009)
Johnson, R., Pandis, I., Stoica, R., Athanassoulis, M., Ailamaki, A.: Aether: A scalable approach to logging. PVLDB 3(1), 681–692 (2010)
Johnson, R., Pandis, I., Stoica, R., Athanassoulis, M., Ailamaki, A.: Scalability of write-ahead logging on multicore and multisocket hardware. VLDB J., 239–263 (2012)
Kimura, H., Graefe, G., Kuno, H.: Efficient locking techniques for databases on modern hardware. In: Third International Workshop on Accelerating Data Management Systems Using Modern Processor and Storage Architectures (2012)
Lanin, V., Shasha, D.: A symmetric concurrent B-tree algorithm. In: Proceedings of 1986 ACM Fall Joint Computer Conference, ACM 1986, pp. 380–389. IEEE Computer Society Press, Los Alamitos (1986)
Lehman, P.L., Yao, S.B.: Efficient locking for concurrent operations on B-trees. ACM Trans. Database Syst. 6, 650–670 (1981)
Lomet, D.B.: Key range locking strategies for improved concurrency. In: VLDB, pp. 655–664 (1993)
Lomet, D.B.: Simple, robust and highly concurrent b-trees with node deletion. In: ICDE, pp. 18–27 (2004)
Lomet, D.B., Salzberg, B.: Concurrency and recovery for index trees. VLDB J. 6(3), 224–240 (1997)
Mohan, C.: ARIES/KVL: A key-value locking method for concurrency control of multiaction transactions operating on b-tree indexes. In: VLDB, pp. 392–405 (1990)
Mohan, C.: Commit_lsn: A novel and simple method for reducing locking and latching in transaction processing systems. In: McLeod, D., Sacks-Davis, R., Schek, H.-J. (eds.) VLDB, pp. 406–418. Morgan Kaufmann (1990)
Mohan, C.: Disk read-write optimizations and data integrity in transaction systems using write-ahead logging. In: ICDE, pp. 324–331 (1995)
Mohan, C., Haderle, D.J., Lindsay, B.G., Pirahesh, H., Schwarz, P.M.: ARIES: A transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. ACM Trans. Database Syst. 17(1), 94–162 (1992)
Mohan, C., Levine, F.E.: ARIES/IM: An efficient and high concurrency index management method using write-ahead logging. In: SIGMOD, pp. 371–380 (1992)
Mohan, C., Lindsay, B., Obermarck, R.: Transaction management in the R* distributed database management system. ACM TODS 11(4), 378–396 (1986)
Oracle asynchronous commit. Oracle database advanced application developer’s guide
Rafii, A., DuBois, D.: Performance tradeoffs of group commit logging. In: CMG Conference (1989)
Sagiv, Y.: Concurrent operations on b-trees with overtaking. In: ACM PODS, PODS 1985, pp. 28–37. ACM, New York (1985)
Sewall, J., Chhugani, J., Kim, C., Satish, N., Dubey, P.: PALM: Parallel architecture-friendly latch-free modifications to B+ trees on many-core processors. PVLDB 4(11) (2011)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kuno, H., Graefe, G., Kimura, H. (2013). Making Transaction Execution the Bottleneck. In: Madaan, A., Kikuchi, S., Bhalla, S. (eds) Databases in Networked Information Systems. DNIS 2013. Lecture Notes in Computer Science, vol 7813. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-37134-9_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-37134-9_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-37133-2
Online ISBN: 978-3-642-37134-9
eBook Packages: Computer ScienceComputer Science (R0)