{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,8,7]],"date-time":"2024-08-07T23:34:58Z","timestamp":1723073698857},"reference-count":26,"publisher":"Association for Computing Machinery (ACM)","issue":"10","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Proc. VLDB Endow."],"published-print":{"date-parts":[[2015,6]]},"abstract":"Window functions, also known as analytic OLAP functions, have been part of the SQL standard for more than a decade and are now a widely-used feature. Window functions allow to elegantly express many useful query types including time series analysis, ranking, percentiles, moving averages, and cumulative sums. Formulating such queries in plain SQL-92 is usually both cumbersome and inefficient.<\/jats:p>\n Despite being supported by all major database systems, there have been few publications that describe how to implement an efficient relational window operator. This work aims at filling this gap by presenting an efficient and general algorithm for the window operator. Our algorithm is optimized for high-performance main-memory database systems and has excellent performance on modern multi-core CPUs. We show how to fully parallelize all phases of the operator in order to effectively scale for arbitrary input distributions.<\/jats:p>","DOI":"10.14778\/2794367.2794375","type":"journal-article","created":{"date-parts":[[2015,7,30]],"date-time":"2015-07-30T14:37:34Z","timestamp":1438267054000},"page":"1058-1069","source":"Crossref","is-referenced-by-count":26,"title":["Efficient processing of window functions in analytical SQL queries"],"prefix":"10.14778","volume":"8","author":[{"given":"Viktor","family":"Leis","sequence":"first","affiliation":[{"name":"Technische Universit\u00e4t M\u00fcnchen"}]},{"given":"Kan","family":"Kundhikanjana","sequence":"additional","affiliation":[{"name":"Technische Universit\u00e4t M\u00fcnchen"}]},{"given":"Alfons","family":"Kemper","sequence":"additional","affiliation":[{"name":"Technische Universit\u00e4t M\u00fcnchen"}]},{"given":"Thomas","family":"Neumann","sequence":"additional","affiliation":[{"name":"Technische Universit\u00e4t M\u00fcnchen"}]}],"member":"320","published-online":{"date-parts":[[2015,6]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"http:\/\/docs.oracle.com\/database\/121\/DWHSG\/analysis.htm. http:\/\/docs.oracle.com\/database\/121\/DWHSG\/analysis.htm."},{"key":"e_1_2_1_2_1","unstructured":"http:\/\/msdn.microsoft.com\/en-us\/library\/ms189461(v=sql.120).aspx. http:\/\/msdn.microsoft.com\/en-us\/library\/ms189461(v=sql.120).aspx."},{"key":"e_1_2_1_3_1","unstructured":"http:\/\/www-01.ibm.com\/support\/knowledgecenter\/SSEPGG_10.5.0\/com.ibm.db2.luw.sql.ref.doc\/doc\/r0023461.html. http:\/\/www-01.ibm.com\/support\/knowledgecenter\/SSEPGG_10.5.0\/com.ibm.db2.luw.sql.ref.doc\/doc\/r0023461.html."},{"key":"e_1_2_1_4_1","unstructured":"http:\/\/help.sap.de\/hana\/SAP_HANA_SQL_and_System_Views_Reference_en.pdf. http:\/\/help.sap.de\/hana\/SAP_HANA_SQL_and_System_Views_Reference_en.pdf."},{"key":"e_1_2_1_5_1","unstructured":"http:\/\/www.postgresql.org\/docs\/9.4\/static\/tutorial-window.html. http:\/\/www.postgresql.org\/docs\/9.4\/static\/tutorial-window.html."},{"key":"e_1_2_1_6_1","unstructured":"https:\/\/www.monetdb.org\/Documentation\/Manuals\/SQLreference\/WindowFunctions. https:\/\/www.monetdb.org\/Documentation\/Manuals\/SQLreference\/WindowFunctions."},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.14778\/1687553.1687563"},{"key":"e_1_2_1_8_1","volume-title":"Oracle","author":"Bellamkonda S.","year":"2000"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.14778\/2536222.2536235"},{"key":"e_1_2_1_10_1","first-page":"1322","volume-title":"VLDB","author":"Boncz P.","year":"2005"},{"key":"e_1_2_1_11_1","first-page":"225","volume-title":"CIDR","author":"Boncz P.","year":"2005"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.14778\/2350229.2350243"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/233269.233333"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2070736.2070747"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2011.5767867"},{"key":"e_1_2_1_16_1","volume-title":"CIDR","author":"Kornacker M.","year":"2015"},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/2588555.2610507"},{"key":"e_1_2_1_18_1","first-page":"1049","volume-title":"VLDB","author":"Nambiar R. O.","year":"2006"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.14778\/2002938.2002940"},{"key":"e_1_2_1_20_1","first-page":"383","volume-title":"BTW","author":"Neumann T.","year":"2015"},{"issue":"1","key":"e_1_2_1_21_1","first-page":"3","article-title":"Compiling database queries into machine code","volume":"37","author":"Neumann T.","year":"2014","journal-title":"IEEE Data Eng. Bull."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/1229428.1229458"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/1147954.1147958"},{"key":"e_1_2_1_24_1","first-page":"51","volume-title":"ICDE","author":"Yang J.","year":"2001"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/2206869.2206883"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1145\/872757.872840"}],"container-title":["Proceedings of the VLDB Endowment"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.14778\/2794367.2794375","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,12,28]],"date-time":"2022-12-28T11:10:52Z","timestamp":1672225852000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.14778\/2794367.2794375"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,6]]},"references-count":26,"journal-issue":{"issue":"10","published-print":{"date-parts":[[2015,6]]}},"alternative-id":["10.14778\/2794367.2794375"],"URL":"https:\/\/doi.org\/10.14778\/2794367.2794375","relation":{},"ISSN":["2150-8097"],"issn-type":[{"value":"2150-8097","type":"print"}],"subject":[],"published":{"date-parts":[[2015,6]]}}}