{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:11:27Z","timestamp":1750306287406,"version":"3.41.0"},"reference-count":41,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2015,10,23]],"date-time":"2015-10-23T00:00:00Z","timestamp":1445558400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Database Syst."],"published-print":{"date-parts":[[2015,10,23]]},"abstract":"<jats:p>In the last decade, improvements on single-core performance of CPUs has stagnated. Consequently, methods for the development and optimization of software for these platforms have to be reconsidered. Software must be optimized such that the available single-core performance is exploited more effectively. This can be achieved by reducing the number of instructions that need to be executed. In this article, we show that layered database applications execute many redundant, nonessential, instructions that can be eliminated without affecting the course of execution and the output of the application. This elimination is performed using a vertical integration process which breaks down the different layers of layered database applications. By doing so, applications are being reduced to their essence, and as a consequence, transformations can be carried out that affect both the application code and the data access code which were not possible before. We show that this vertical integration process can be fully automated and, as such, be integrated in an operational workflow. Experimental evaluation of this approach shows that up to 95% of the instructions can be eliminated. The reduction of instructions leads to a more efficient use of the available hardware resources. This results in greatly improved performance of the application and a significant reduction in energy consumption.<\/jats:p>","DOI":"10.1145\/2818180","type":"journal-article","created":{"date-parts":[[2015,10,24]],"date-time":"2015-10-24T18:27:12Z","timestamp":1445711232000},"page":"1-39","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":3,"title":["Reducing Layered Database Applications to their Essence through Vertical Integration"],"prefix":"10.1145","volume":"40","author":[{"given":"Kristian F. D.","family":"Rietveld","sequence":"first","affiliation":[{"name":"Leiden University, The Netherlands"}]},{"given":"Harry A. G.","family":"Wijshoff","sequence":"additional","affiliation":[{"name":"Leiden University, The Netherlands"}]}],"member":"320","published-online":{"date-parts":[[2015,10,23]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/360018.360025"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/29873.29875"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2003.1260881"},{"key":"e_1_2_1_5_1","series-title":"Lecture Notes in Computer Science","volume-title":"Languages and Compilers for Parallel Computing","author":"Andrade Henrique","unstructured":"Henrique Andrade , Suresh Aryangat , Tahsin Kurc , Joel Saltz , and Alan Sussman . 2004. Efficient execution of multi-query data analysis batches using compiler optimization strategies . In Languages and Compilers for Parallel Computing , Lawrence Rauchwerger (Ed.)., Lecture Notes in Computer Science , Vol. 2958 , Springer , Berlin Heidelberg, 509--523. Henrique Andrade, Suresh Aryangat, Tahsin Kurc, Joel Saltz, and Alan Sussman. 2004. Efficient execution of multi-query data analysis batches using compiler optimization strategies. In Languages and Compilers for Parallel Computing, Lawrence Rauchwerger (Ed.)., Lecture Notes in Computer Science, Vol. 2958, Springer, Berlin Heidelberg, 509--523."},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2011.5767949"},{"volume-title":"Proceedings of the Conference on Innovative Data Systems Research (CIDR).","author":"Cheung Alvin","key":"e_1_2_1_7_1","unstructured":"Alvin Cheung , Owen Arden , Samuel Madden , Armando Solar-Lezama , and Andrew C. Myers . 2013. StatusQuo: Making familiar abstractions perform using program analysis . In Proceedings of the Conference on Innovative Data Systems Research (CIDR). Alvin Cheung, Owen Arden, Samuel Madden, Armando Solar-Lezama, and Andrew C. Myers. 2013. StatusQuo: Making familiar abstractions perform using program analysis. In Proceedings of the Conference on Innovative Data Systems Research (CIDR)."},{"key":"e_1_2_1_8_1","volume-title":"Ibrahim","author":"Cook William R.","year":"2005","unstructured":"William R. Cook and Ali H . Ibrahim . 2005 . Integrating programming languages and databases: What is the problem. ODBMS.ORG, Expert Article . William R. Cook and Ali H. Ibrahim. 2005. Integrating programming languages and databases: What is the problem. ODBMS.ORG, Expert Article."},{"key":"e_1_2_1_9_1","volume-title":"Report to Congress on Server and Data Center Energy Efficiency","author":"EPA.","year":"2007","unstructured":"EPA. 2007. Report to Congress on Server and Data Center Energy Efficiency . U.S. Environmental Protection Agency . ( 2007 ). EPA. 2007. Report to Congress on Server and Data Center Energy Efficiency. U.S. Environmental Protection Agency. (2007)."},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1273440.1250665"},{"key":"e_1_2_1_11_1","volume-title":"Proceedings of the 2nd IEEE Workshop on Hot Topics in Web Systems and Technologies (HotWeb).","author":"Garrod Charles","year":"2008","unstructured":"Charles Garrod , Amit Manjhi , Bruce M. Maggs , Todd C. Mowry , and Anthony Tomasic . 2008 . Holistic application analysis for update-independence . In Proceedings of the 2nd IEEE Workshop on Hot Topics in Web Systems and Technologies (HotWeb). Charles Garrod, Amit Manjhi, Bruce M. Maggs, Todd C. Mowry, and Anthony Tomasic. 2008. Holistic application analysis for update-independence. In Proceedings of the 2nd IEEE Workshop on Hot Topics in Web Systems and Technologies (HotWeb)."},{"key":"e_1_2_1_12_1","series-title":"Esprit Basic Research Series 2000","volume-title":"Integrating query and program optimization using persistent CPS representations","author":"Gawecki Andreas","unstructured":"Andreas Gawecki and Florian Matthes . 2000. Integrating query and program optimization using persistent CPS representations . In Fully Integrated Data Environments, Malcolm P. Atkinson and Ray Welland (Eds.), Esprit Basic Research Series 2000 , Springer , Berlin Heidelberg , 496--501. Andreas Gawecki and Florian Matthes. 2000. Integrating query and program optimization using persistent CPS representations. In Fully Integrated Data Environments, Malcolm P. Atkinson and Ray Welland (Eds.), Esprit Basic Research Series 2000, Springer, Berlin Heidelberg, 496--501."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.5555\/1325851.1326021"},{"key":"e_1_2_1_14_1","volume-title":"HipHop for PHP Project. https:\/\/github.com\/facebook\/hiphop-php\/wiki\/. (Last accessed","author":"HipHop","year":"2012","unstructured":"HipHop for PHP. 2012. HipHop for PHP Project. https:\/\/github.com\/facebook\/hiphop-php\/wiki\/. (Last accessed July 2012 ). HipHop for PHP. 2012. HipHop for PHP Project. https:\/\/github.com\/facebook\/hiphop-php\/wiki\/. (Last accessed July 2012)."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1016\/0169-023X(94)90009-4"},{"volume-title":"A Survey of Data Flow Analysis Techniques","author":"Kennedy Ken","key":"e_1_2_1_16_1","unstructured":"Ken Kennedy . 1981. A Survey of Data Flow Analysis Techniques . Prentice-Hall , Englewood Cliffs, NJ . 5--54. Ken Kennedy. 1981. A Survey of Data Flow Analysis Techniques. Prentice-Hall, Englewood Cliffs, NJ. 5--54."},{"key":"e_1_2_1_17_1","series-title":"Lecture Notes in Computer Science","volume-title":"Languages and Compilers for Parallel Computing, Utpal Banerjee, David Gelernter, Alex Nicolau, and David Padua (Eds.)","author":"Kennedy Ken","unstructured":"Ken Kennedy and Kathryn McKinley . 1994. Maximizing loop parallelism and improving data locality via loop fusion and distribution . In Languages and Compilers for Parallel Computing, Utpal Banerjee, David Gelernter, Alex Nicolau, and David Padua (Eds.) , Lecture Notes in Computer Science , Vol. 768 , Springer , Berlin Heidelberg , 301--320. Ken Kennedy and Kathryn McKinley. 1994. Maximizing loop parallelism and improving data locality via loop fusion and distribution. In Languages and Compilers for Parallel Computing, Utpal Banerjee, David Gelernter, Alex Nicolau, and David Padua (Eds.), Lecture Notes in Computer Science, Vol. 768, Springer, Berlin Heidelberg, 301--320."},{"key":"e_1_2_1_18_1","volume-title":"Growth in data center electricity use 2005 to","author":"Koomey Jonathan G.","year":"2010","unstructured":"Jonathan G. Koomey . 2011. Growth in data center electricity use 2005 to 2010 . http:\/\/www.analyticspress.com\/datacenters.html. Jonathan G. Koomey. 2011. Growth in data center electricity use 2005 to 2010. http:\/\/www.analyticspress.com\/datacenters.html."},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2010.5447892"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/567532.567555"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.5555\/645483.653607"},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/130283.130301"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/564691.564763"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/101620.101642"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2009.194"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/1142473.1142552"},{"key":"e_1_2_1_27_1","volume-title":"February","author":"Project DB.","year":"2013","unstructured":"Monet DB. 2013. MonetDB Project . http:\/\/www.monetdb.org\/.(Last accessed , February 2013 ). MonetDB. 2013. MonetDB Project. http:\/\/www.monetdb.org\/.(Last accessed, February 2013)."},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.14778\/2002938.2002940"},{"key":"e_1_2_1_29_1","unstructured":"ObjectWeb Consortium. 2005. JMOB - RUBBoS Benchmark. http:\/\/jmob.ow2.org\/rubbos.html. (Last accessed July 2012.)  ObjectWeb Consortium. 2005. JMOB - RUBBoS Benchmark. http:\/\/jmob.ow2.org\/rubbos.html. (Last accessed July 2012.)"},{"key":"e_1_2_1_30_1","unstructured":"ObjectWeb Consortium. 2008. RUBiS - Home Page. http:\/\/rubis.ow2.org\/. (Last accessed July 2012.)  ObjectWeb Consortium. 2008. RUBiS - Home Page. http:\/\/rubis.ow2.org\/. (Last accessed July 2012.)"},{"key":"e_1_2_1_31_1","unstructured":"Oracle. 2011. Oracle In-Memory Database Cache. http:\/\/www.oracle.com\/us\/products\/database\/in-memory-database-cache-066510.html (Last accessed March 2011.)  Oracle. 2011. Oracle In-Memory Database Cache. http:\/\/www.oracle.com\/us\/products\/database\/in-memory-database-cache-066510.html (Last accessed March 2011.)"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/7902.7904"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00778-006-0026-x"},{"volume-title":"Proceedings of the 2nd International Conference on Smart Grids and Green IT Systems (SMARTGREENS'13)","author":"Kristian F.","key":"e_1_2_1_34_1","unstructured":"Kristian F. D. Rietveld and Harry A. G. Wijshoff. 2013a. Quantifying energy usage in data centers through instruction-count overhead . In Proceedings of the 2nd International Conference on Smart Grids and Green IT Systems (SMARTGREENS'13) . 189--198. Kristian F. D. Rietveld and Harry A. G. Wijshoff. 2013a. Quantifying energy usage in data centers through instruction-count overhead. In Proceedings of the 2nd International Conference on Smart Grids and Green IT Systems (SMARTGREENS'13). 189--198."},{"key":"e_1_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/2482767.2482807"},{"key":"e_1_2_1_36_1","series-title":"Lecture Notes in Computer Science","volume-title":"Wijshoff","author":"Rietveld Kristian F. D.","year":"2015","unstructured":"Kristian F. D. Rietveld and Harry A. G . Wijshoff . 2015 . Re-engineering compiler transformations to outperform database query optimizers. In Languages and Compilers for Parallel Computing, James Brodman and Peng Tu (Eds.), Lecture Notes in Computer Science , Vol. 8967 , Springer International Publishing , 300--314. Kristian F. D. Rietveld and Harry A. G. Wijshoff. 2015. Re-engineering compiler transformations to outperform database query optimizers. In Languages and Compilers for Parallel Computing, James Brodman and Peng Tu (Eds.), Lecture Notes in Computer Science, Vol. 8967, Springer International Publishing, 300--314."},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1109\/MIC.2007.3"},{"key":"e_1_2_1_38_1","unstructured":"TPC. 2009. TPC-H. Transaction Processing Performance Council. http:\/\/tpc.org\/tpch\/default.asp. (Last accessed May 2009.)  TPC. 2009. TPC-H. Transaction Processing Performance Council. http:\/\/tpc.org\/tpch\/default.asp. (Last accessed May 2009.)"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1016\/0743-7315(88)90012-3"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542523"},{"key":"e_1_2_1_41_1","volume-title":"Filed","author":"Yach David P.","year":"1998","unstructured":"David P. Yach , James D. Graham , and Anthony F. Scian . 2002. Database system with methodology for accessing a database from portable devices. U.S. Patent 6341288 , Filed July 29, 1998 , and issued January 22, 2002. David P. Yach, James D. Graham, and Anthony F. Scian. 2002. Database system with methodology for accessing a database from portable devices. U.S. Patent 6341288, Filed July 29, 1998, and issued January 22, 2002."},{"volume-title":"Supercompilers for Parallel and Vector Computers","author":"Zima Hans","key":"e_1_2_1_42_1","unstructured":"Hans Zima and Barbara Chapman . 1991. Supercompilers for Parallel and Vector Computers . ACM , New York, NY . Hans Zima and Barbara Chapman. 1991. Supercompilers for Parallel and Vector Computers. ACM, New York, NY."}],"container-title":["ACM Transactions on Database Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2818180","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2818180","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T04:39:01Z","timestamp":1750221541000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2818180"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,10,23]]},"references-count":41,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2015,10,23]]}},"alternative-id":["10.1145\/2818180"],"URL":"https:\/\/doi.org\/10.1145\/2818180","relation":{},"ISSN":["0362-5915","1557-4644"],"issn-type":[{"type":"print","value":"0362-5915"},{"type":"electronic","value":"1557-4644"}],"subject":[],"published":{"date-parts":[[2015,10,23]]},"assertion":[{"value":"2013-12-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-05-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-10-23","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}