{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,8]],"date-time":"2026-04-08T09:02:46Z","timestamp":1775638966534,"version":"3.50.1"},"reference-count":49,"publisher":"Association for Computing Machinery (ACM)","issue":"2","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Proc. VLDB Endow."],"published-print":{"date-parts":[[2019,10]]},"abstract":"<jats:p>To support Hybrid Transaction and Analytical Processing (HTAP), database systems generally rely on Multi-Version Concurrency Control (MVCC). While MVCC elegantly enables lightweight isolation of readers and writers, it also generates outdated tuple versions, which, eventually, have to be reclaimed. Surprisingly, we have found that in HTAP workloads, this reclamation of old versions, i.e., garbage collection, often becomes the performance bottleneck.<\/jats:p>\n          <jats:p>It turns out that in the presence of long-running queries, state-of-the-art garbage collectors are too coarse-grained. As a consequence, the number of versions grows quickly slowing down the entire system. Moreover, the standard background cleaning approach makes the system vulnerable to sudden spikes in workloads.<\/jats:p>\n          <jats:p>In this work, we propose a novel garbage collection (GC) approach that prunes obsolete versions eagerly. Its seamless integration into the transaction processing keeps the GC overhead minimal and ensures good scalability. We show that our approach handles mixed workloads well and also speeds up pure OLTP workloads like TPC-C compared to existing state-of-the-art approaches.<\/jats:p>","DOI":"10.14778\/3364324.3364328","type":"journal-article","created":{"date-parts":[[2020,9,11]],"date-time":"2020-09-11T03:16:00Z","timestamp":1599794160000},"page":"128-141","source":"Crossref","is-referenced-by-count":39,"title":["Scalable garbage collection for in-memory MVCC systems"],"prefix":"10.14778","volume":"13","author":[{"given":"Jan","family":"B\u00f6ttcher","sequence":"first","affiliation":[{"name":"Technische Universit\u00e4t M\u00fcnchen"}]},{"given":"Viktor","family":"Leis","sequence":"additional","affiliation":[{"name":"Friedrich-Schiller-Universit\u00e4t Jena"}]},{"given":"Thomas","family":"Neumann","sequence":"additional","affiliation":[{"name":"Technische Universit\u00e4t M\u00fcnchen"}]},{"given":"Alfons","family":"Kemper","sequence":"additional","affiliation":[{"name":"Technische Universit\u00e4t M\u00fcnchen"}]}],"member":"320","published-online":{"date-parts":[[2019,10]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"CIDR","author":"Appuswamy R.","year":"2017"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/1988842.1988850"},{"key":"e_1_2_1_3_1","volume-title":"White Paper of SQL Server","author":"Delaney K.","year":"2014"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2463676.2463710"},{"key":"e_1_2_1_5_1","doi-asserted-by":"crossref","unstructured":"B. Ding L. Kot and J. Gehrke. Improving optimistic concurrency control through transaction batching and operation reordering. PVLDB 12(2) 2018.  B. Ding L. Kot and J. Gehrke. Improving optimistic concurrency control through transaction batching and operation reordering. PVLDB 12(2) 2018.","DOI":"10.14778\/3282495.3282502"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2019.00071"},{"key":"e_1_2_1_7_1","doi-asserted-by":"crossref","unstructured":"J. M. Faleiro and D. J. Abadi. Rethinking serializable multiversion concurrency control. PVLDB 8(11) 2015.  J. M. Faleiro and D. J. Abadi. Rethinking serializable multiversion concurrency control. PVLDB 8(11) 2015.","DOI":"10.14778\/2809974.2809981"},{"key":"e_1_2_1_8_1","volume-title":"CIDR","author":"Faleiro J. M.","year":"2017"},{"key":"e_1_2_1_9_1","doi-asserted-by":"crossref","unstructured":"F. F\u00e4rber S. K. Cha J. Primsch C. Bornh\u00f6vd S. Sigg and W. Lehner. SAP HANA database: Data management for modern business applications. SIGMOD Record 40(4) 2012.  F. F\u00e4rber S. K. Cha J. Primsch C. Bornh\u00f6vd S. Sigg and W. Lehner. SAP HANA database: Data management for modern business applications. SIGMOD Record 40(4) 2012.","DOI":"10.1145\/2094114.2094126"},{"key":"e_1_2_1_10_1","volume-title":"TPCTC","author":"Funke F.","year":"2011"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.14778\/3303753.3303763"},{"key":"e_1_2_1_12_1","doi-asserted-by":"crossref","unstructured":"A. Gurajada D. Gala F. Zhou A. Pathak and Z.-F. Ma. Btrim: hybrid in-memory database architecture for extreme transaction processing in vldbs. PVLDB 11(12) 2018.  A. Gurajada D. Gala F. Zhou A. Pathak and Z.-F. Ma. Btrim: hybrid in-memory database architecture for extreme transaction processing in vldbs. PVLDB 11(12) 2018.","DOI":"10.14778\/3229863.3229875"},{"key":"e_1_2_1_13_1","doi-asserted-by":"crossref","unstructured":"T. Hadzilacos and N. Yannakakis. Deleting completed transactions. JCSS 38(2) 1989.  T. Hadzilacos and N. Yannakakis. Deleting completed transactions. JCSS 38(2) 1989.","DOI":"10.1016\/0022-0000(89)90007-X"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2011.5767867"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/2882903.2882905"},{"key":"e_1_2_1_16_1","volume-title":"EDBT","author":"Kipf A.","year":"2017"},{"key":"e_1_2_1_17_1","doi-asserted-by":"crossref","unstructured":"A. Kipf V. Pandey J. B\u00f6ttcher L. Braun T. Neumann and A. Kemper. Scalable analytics on fast data. ACM 44(1) Jan. 2019.  A. Kipf V. Pandey J. B\u00f6ttcher L. Braun T. Neumann and A. Kemper. Scalable analytics on fast data. ACM 44(1) Jan. 2019.","DOI":"10.1145\/3283811"},{"key":"e_1_2_1_18_1","unstructured":"P. Larson M. Zwilling and K. Farlee. The Hekaton memory-optimized OLTP engine. IEEE Data Eng. Bull. 36(2) 2013.  P. Larson M. Zwilling and K. Farlee. The Hekaton memory-optimized OLTP engine. IEEE Data Eng. Bull. 36(2) 2013."},{"key":"e_1_2_1_19_1","doi-asserted-by":"crossref","unstructured":"P.-\u00c5. Larson S. Blanas C. Diaconu C. Freedman J. M. Patel and M. Zwilling. High-performance concurrency control mechanisms for main-memory databases. PVLDB 5(4) 2011.  P.-\u00c5. Larson S. Blanas C. Diaconu C. Freedman J. M. Patel and M. Zwilling. High-performance concurrency control mechanisms for main-memory databases. PVLDB 5(4) 2011.","DOI":"10.14778\/2095686.2095689"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/2882903.2903734"},{"key":"e_1_2_1_21_1","volume-title":"CIDR","author":"Levandoski J. J.","year":"2015"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-18576-3_4"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/3035918.3064015"},{"key":"e_1_2_1_24_1","doi-asserted-by":"crossref","unstructured":"L. Lu X. Shi Y. Zhou X. Zhang H. Jin C. Pei L. He and Y. Geng. Lifetime-based memory management for distributed data processing systems. PVLDB 9(12) 2016.  L. Lu X. Shi Y. Zhou X. Zhang H. Jin C. Pei L. He and Y. Geng. Lifetime-based memory management for distributed data processing systems. PVLDB 9(12) 2016.","DOI":"10.14778\/2994509.2994513"},{"key":"e_1_2_1_25_1","unstructured":"MemSQL. https:\/\/www.memsql.com\/.  MemSQL. https:\/\/www.memsql.com\/."},{"key":"e_1_2_1_26_1","volume-title":"CIDR","author":"M\u00fche H.","year":"2013"},{"key":"e_1_2_1_27_1","unstructured":"MySQL. https:\/\/www.mysql.com\/.  MySQL. https:\/\/www.mysql.com\/."},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1145\/2723372.2749436"},{"key":"e_1_2_1_29_1","unstructured":"NuoDB. http:\/\/www.nuodb.com\/.  NuoDB. http:\/\/www.nuodb.com\/."},{"key":"e_1_2_1_30_1","unstructured":"Oracle. https:\/\/www.oracle.com\/database\/.  Oracle. https:\/\/www.oracle.com\/database\/."},{"key":"e_1_2_1_31_1","volume-title":"SIGMOD. ACM","author":"\u00d6zcan F.","year":"2017"},{"key":"e_1_2_1_32_1","doi-asserted-by":"crossref","unstructured":"J. M. Patel H. Deshmukh J. Zhu N. Potti Z. Zhang M. Spehlmann H. Memisoglu and S. Saurabh. Quickstep: A data platform based on the scaling-up approach. PVLDB 11(6) 2018.  J. M. Patel H. Deshmukh J. Zhu N. Potti Z. Zhang M. Spehlmann H. Memisoglu and S. Saurabh. Quickstep: A data platform based on the scaling-up approach. PVLDB 11(6) 2018.","DOI":"10.14778\/3184470.3184471"},{"key":"e_1_2_1_33_1","unstructured":"A. Pavlo. Multi-Version Concurrency Control (Garbage Collection). https:\/\/15721.courses.cs.cmu.edu\/spring2019\/slides\/05-mvcc3.pdf January 2019.  A. Pavlo. Multi-Version Concurrency Control (Garbage Collection). https:\/\/15721.courses.cs.cmu.edu\/spring2019\/slides\/05-mvcc3.pdf January 2019."},{"key":"e_1_2_1_34_1","unstructured":"Peloton. https:\/\/pelotondb.io\/.  Peloton. https:\/\/pelotondb.io\/."},{"key":"e_1_2_1_35_1","unstructured":"PostgreSQL. https:\/\/www.postgresql.org\/.  PostgreSQL. https:\/\/www.postgresql.org\/."},{"key":"e_1_2_1_36_1","volume-title":"TPCTC. Springer","author":"Psaroudakis I.","year":"2014"},{"key":"e_1_2_1_37_1","doi-asserted-by":"crossref","unstructured":"R. Rehrmann C. Binnig A. B\u00f6hm K. Kim W. Lehner and A. Rizk. Oltpshare: the case for sharing in OLTP workloads. PVLDB 11(12) 2018.  R. Rehrmann C. Binnig A. B\u00f6hm K. Kim W. Lehner and A. Rizk. Oltpshare: the case for sharing in OLTP workloads. PVLDB 11(12) 2018.","DOI":"10.14778\/3229863.3229866"},{"key":"e_1_2_1_38_1","doi-asserted-by":"crossref","unstructured":"C. Reid P. A. Bernstein M. Wu and X. Yuan. Optimistic concurrency control by melding trees. PVLDB 4(11) 2011.  C. Reid P. A. Bernstein M. Wu and X. Yuan. Optimistic concurrency control by melding trees. PVLDB 4(11) 2011.","DOI":"10.14778\/3402707.3402732"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/3183713.3196904"},{"key":"e_1_2_1_40_1","unstructured":"Microsoft SQL Server. https:\/\/www.microsoft.com\/en-us\/sql-server\/.  Microsoft SQL Server. https:\/\/www.microsoft.com\/en-us\/sql-server\/."},{"key":"e_1_2_1_41_1","volume-title":"VLDB","author":"Stonebraker M.","year":"2007"},{"key":"e_1_2_1_42_1","doi-asserted-by":"crossref","unstructured":"B. Tian J. Huang B. Mozafari and G. Schoenebeck. Contention-aware lock scheduling for transactional databases. PVLDB 11(5) 2018.  B. Tian J. Huang B. Mozafari and G. Schoenebeck. Contention-aware lock scheduling for transactional databases. PVLDB 11(5) 2018.","DOI":"10.1145\/3187009.3177740"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/2517349.2522713"},{"key":"e_1_2_1_44_1","doi-asserted-by":"crossref","unstructured":"T. Wang and H. Kimura. Mostly-optimistic concurrency control for highly contended dynamic workloads on a thousand cores. PVLDB 10(2) 2016.  T. Wang and H. Kimura. Mostly-optimistic concurrency control for highly contended dynamic workloads on a thousand cores. PVLDB 10(2) 2016.","DOI":"10.14778\/3015274.3015276"},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/3183713.3196895"},{"key":"e_1_2_1_46_1","doi-asserted-by":"crossref","unstructured":"Y. Wu J. Arulraj J. Lin R. Xian and A. Pavlo. An empirical evaluation of in-memory multi-version concurrency control. PVLDB 10(7) 2017.  Y. Wu J. Arulraj J. Lin R. Xian and A. Pavlo. An empirical evaluation of in-memory multi-version concurrency control. PVLDB 10(7) 2017.","DOI":"10.14778\/3067421.3067427"},{"key":"e_1_2_1_47_1","doi-asserted-by":"crossref","unstructured":"L. Xu T. Guo W. Dou W. Wang and J. Wei. An experimental evaluation of garbage collectors on big data applications. PVLDB 12(1) Sept. 2018.  L. Xu T. Guo W. Dou W. Wang and J. Wei. An experimental evaluation of garbage collectors on big data applications. PVLDB 12(1) Sept. 2018.","DOI":"10.14778\/3303753.3303762"},{"key":"e_1_2_1_48_1","doi-asserted-by":"crossref","unstructured":"X. Yu G. Bezerra A. Pavlo S. Devadas and M. Stonebraker. Staring into the abyss: An evaluation of concurrency control with one thousand cores. PVLDB 8(3) 2014.  X. Yu G. Bezerra A. Pavlo S. Devadas and M. Stonebraker. Staring into the abyss: An evaluation of concurrency control with one thousand cores. PVLDB 8(3) 2014.","DOI":"10.14778\/2735508.2735511"},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/2882903.2882935"}],"container-title":["Proceedings of the VLDB Endowment"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.14778\/3364324.3364328","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,12,28]],"date-time":"2022-12-28T11:01:26Z","timestamp":1672225286000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.14778\/3364324.3364328"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,10]]},"references-count":49,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2019,10]]}},"alternative-id":["10.14778\/3364324.3364328"],"URL":"https:\/\/doi.org\/10.14778\/3364324.3364328","relation":{},"ISSN":["2150-8097"],"issn-type":[{"value":"2150-8097","type":"print"}],"subject":[],"published":{"date-parts":[[2019,10]]}}}