{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,20]],"date-time":"2026-04-20T17:57:01Z","timestamp":1776707821286,"version":"3.51.2"},"reference-count":47,"publisher":"Association for Computing Machinery (ACM)","issue":"3","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Proc. VLDB Endow."],"published-print":{"date-parts":[[2017,11]]},"abstract":"<jats:p>As data continues to be generated at exponentially growing rates in heterogeneous formats, fast analytics to extract meaningful information is becoming increasingly important. Systems widely use in-memory caching as one of their primary techniques to speed up data analytics. However, caches in data analytics systems cannot rely on simple caching policies and a fixed data layout to achieve good performance. Different datasets and workloads require different layouts and policies to achieve optimal performance.<\/jats:p>\n          <jats:p>This paper presents ReCache, a cache-based performance accelerator that is reactive to the cost and heterogeneity of diverse raw data formats. Using timing measurements of caching operations and selection operators in a query plan, ReCache accounts for the widely varying costs of reading, parsing, and caching data in nested and tabular formats. Combining these measurements with information about frequently accessed data fields in the workload, ReCache automatically decides whether a nested or relational column-oriented layout would lead to better query performance. Furthermore, ReCache keeps track of commonly utilized operators to make informed cache admission and eviction decisions. Experiments on synthetic and real-world datasets show that our caching techniques decrease caching overhead for individual queries by an average of 59%. Furthermore, over the entire workload, ReCache reduces execution time by 19-75% compared to existing techniques.<\/jats:p>","DOI":"10.14778\/3157794.3157801","type":"journal-article","created":{"date-parts":[[2017,12,12]],"date-time":"2017-12-12T18:33:38Z","timestamp":1513103618000},"page":"324-337","source":"Crossref","is-referenced-by-count":16,"title":["ReCache"],"prefix":"10.14778","volume":"11","author":[{"given":"Tahir","family":"Azim","sequence":"first","affiliation":[{"name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Manos","family":"Karpathiotakis","sequence":"additional","affiliation":[{"name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Anastasia","family":"Ailamaki","sequence":"additional","affiliation":[{"name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne and RAW Labs SA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2017,11]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"The LLVM compiler infrastructure. http:\/\/llvm.org. Accessed: 2017-01-30.  The LLVM compiler infrastructure. http:\/\/llvm.org. Accessed: 2017-01-30."},{"key":"e_1_2_1_2_1","unstructured":"The Yelp Dataset Challenge. http:\/\/yelp.com\/dataset_challenge. Accessed: 2017-06-30.  The Yelp Dataset Challenge. http:\/\/yelp.com\/dataset_challenge. Accessed: 2017-06-30."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.14778\/1687553.1687625"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2007.367892"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/2452376.2452377"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/2213836.2213864"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/2588555.2610502"},{"key":"e_1_2_1_8_1","first-page":"718","volume-title":"Proceedings of the 29th international conference on Very large data bases-Volume 29","author":"Altinel M.","year":"2003","unstructured":"M. Altinel , C. Bornh\u00f6vd , S. Krishnamurthy , C. Mohan , H. Pirahesh , and B. Reinwald . Cache tables: Paving the way for an adaptive database cache . In Proceedings of the 29th international conference on Very large data bases-Volume 29 , pages 718 -- 729 . VLDB Endowment , 2003 . M. Altinel, C. Bornh\u00f6vd, S. Krishnamurthy, C. Mohan, H. Pirahesh, and B. Reinwald. Cache tables: Paving the way for an adaptive database cache. In Proceedings of the 29th international conference on Very large data bases-Volume 29, pages 718--729. VLDB Endowment, 2003."},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2723372.2742797"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1147\/sj.52.0078"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/2588555.2612185"},{"key":"e_1_2_1_12_1","first-page":"193","volume-title":"Usenix symposium on internet technologies and systems","volume":"12","author":"Cao P.","year":"1997","unstructured":"P. Cao and S. Irani . Cost-aware www proxy caching algorithms . In Usenix symposium on internet technologies and systems , volume 12 , pages 193 -- 206 , 1997 . P. Cao and S. Irani. Cost-aware www proxy caching algorithms. In Usenix symposium on internet technologies and systems, volume 12, pages 193--206, 1997."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/2818181"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.14778\/2824032.2824074"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/2463676.2463709"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/3035918.3035957"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/377674.377676"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/582353.582400"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1145\/2987550.2987553"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/271074.271094"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/38714.38755"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.14778\/1921071.1921077"},{"issue":"1","key":"e_1_2_1_23_1","first-page":"40","article-title":"Monetdb: Two decades of research in column-oriented database architectures","volume":"35","author":"Idreos S.","year":"2012","unstructured":"S. Idreos , F. Groffen , N. Nes , S. Manegold , S. Mullender , M. Kersten , Monetdb: Two decades of research in column-oriented database architectures . A Quarterly Bulletin of the IEEE Computer Society Technical Committee on Database Engineering , 35 ( 1 ): 40 -- 45 , 2012 . S. Idreos, F. Groffen, N. Nes, S. Manegold, S. Mullender, M. Kersten, et al. Monetdb: Two decades of research in column-oriented database architectures. A Quarterly Bulletin of the IEEE Computer Society Technical Committee on Database Engineering, 35(1):40--45, 2012.","journal-title":"A Quarterly Bulletin of the IEEE Computer Society Technical Committee on Database Engineering"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/258533.258666"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-31235-9_32"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/1862919.1862921"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2015.7113361"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.14778\/2994509.2994516"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.14778\/2732977.2732986"},{"key":"e_1_2_1_30_1","first-page":"3","article-title":"Efficient columnar storage for apache hadoop","author":"Kestelyn J.","year":"2013","unstructured":"J. Kestelyn . Introducing Parquet : Efficient columnar storage for apache hadoop . Cloudera Blog , 3 , 2013 . J. Kestelyn. Introducing Parquet: Efficient columnar storage for apache hadoop. Cloudera Blog, 3, 2013.","journal-title":"Cloudera Blog"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/304181.304215"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2010.5447892"},{"issue":"2","key":"e_1_2_1_33_1","first-page":"6","article-title":"Oracle timesten: An in-memory database for enterprise applications","volume":"36","author":"Lahiri T.","year":"2013","unstructured":"T. Lahiri , M.-A. Neimat , and S. Folkman . Oracle timesten: An in-memory database for enterprise applications . IEEE Data Eng. Bull. , 36 ( 2 ): 6 -- 13 , 2013 . T. Lahiri, M.-A. Neimat, and S. Folkman. Oracle timesten: An in-memory database for enterprise applications. IEEE Data Eng. Bull., 36(2):6--13, 2013.","journal-title":"IEEE Data Eng. Bull."},{"key":"e_1_2_1_34_1","first-page":"75","volume-title":"Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization","author":"Lattner C.","unstructured":"C. Lattner and V. Adve . LLVM: A compilation framework for lifelong program analysis & transformation . In Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization , page 75 . IEEE Computer Society, 2004. C. Lattner and V. Adve. LLVM: A compilation framework for lifelong program analysis & transformation. In Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization, page 75. IEEE Computer Society, 2004."},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.14778\/1920841.1920886"},{"key":"e_1_2_1_36_1","unstructured":"MySQL. Chapter 24. Writing a Custom Storage Engine. http:\/\/dev.mysql.com\/doc\/internals\/en\/custom-engine.html.  MySQL. Chapter 24. Writing a Custom Storage Engine. http:\/\/dev.mysql.com\/doc\/internals\/en\/custom-engine.html."},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2013.6544837"},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.14778\/2002938.2002940"},{"issue":"1","key":"e_1_2_1_39_1","first-page":"3","article-title":"Compiling database queries into machine code","volume":"37","author":"Neumann T.","year":"2014","unstructured":"T. Neumann and V. Leis . Compiling database queries into machine code . IEEE Data Eng. Bull. , 37 ( 1 ): 3 -- 11 , 2014 . T. Neumann and V. Leis. Compiling database queries into machine code. IEEE Data Eng. Bull., 37(1):3--11, 2014.","journal-title":"IEEE Data Eng. Bull."},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.14778\/3115404.3115415"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/1376616.1376726"},{"key":"e_1_2_1_42_1","volume-title":"Cache conscious data layouting for in-memory databases","author":"Pirk H.","year":"2010","unstructured":"H. Pirk , M. Grund , J. Krueger , U. Leser , and A. Zeier . Cache conscious data layouting for in-memory databases . Hasso-Plattner-Institute , 2010 . H. Pirk, M. Grund, J. Krueger, U. Leser, and A. Zeier. Cache conscious data layouting for in-memory databases. Hasso-Plattner-Institute, 2010."},{"key":"e_1_2_1_43_1","volume-title":"Don't trash your intermediate results, cache'em. arXiv preprint cs\/0003005","author":"Roy P.","year":"2000","unstructured":"P. Roy , K. Ramamritham , S. Seshadri , P. Shenoy , and S. Sudarshan . Don't trash your intermediate results, cache'em. arXiv preprint cs\/0003005 , 2000 . P. Roy, K. Ramamritham, S. Seshadri, P. Shenoy, and S. Sudarshan. Don't trash your intermediate results, cache'em. arXiv preprint cs\/0003005, 2000."},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/335191.335419"},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.14778\/1687553.1687609"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF01189992"},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1145\/2791347.2791369"}],"container-title":["Proceedings of the VLDB Endowment"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.14778\/3157794.3157801","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,12,28]],"date-time":"2022-12-28T09:37:35Z","timestamp":1672220255000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.14778\/3157794.3157801"}},"subtitle":["reactive caching for fast analytics over heterogeneous data"],"short-title":[],"issued":{"date-parts":[[2017,11]]},"references-count":47,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2017,11]]}},"alternative-id":["10.14778\/3157794.3157801"],"URL":"https:\/\/doi.org\/10.14778\/3157794.3157801","relation":{},"ISSN":["2150-8097"],"issn-type":[{"value":"2150-8097","type":"print"}],"subject":[],"published":{"date-parts":[[2017,11]]}}}