{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,19]],"date-time":"2025-11-19T22:27:43Z","timestamp":1763591263742},"reference-count":30,"publisher":"Association for Computing Machinery (ACM)","issue":"3","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Proc. VLDB Endow."],"published-print":{"date-parts":[[2011,11]]},"abstract":"<jats:p>\n            Newly-released web applications often succumb to a \"Success Disaster,\" where overloaded database machines and resulting high response times destroy a previously good user experience. Unfortunately, the data independence provided by a traditional relational database system, while useful for agile development, only exacerbates the problem by hiding potentially expensive queries under simple declarative expressions. As a result, developers of these applications are increasingly abandoning relational databases in favor of imperative code written against distributed key\/value stores, losing the many benefits of data independence in the process. Instead, we propose PIQL, a declarative language that also provides\n            <jats:italic>scale independence<\/jats:italic>\n            by calculating an upper bound on the number of key\/value store operations that will be performed for any query. Coupled with a service level objective (SLO) compliance prediction model and PIQL's scalable database architecture, these bounds make it easy for developers to write\n            <jats:italic>success-tolerant<\/jats:italic>\n            applications that support an arbitrarily large number of users while still providing acceptable performance. In this paper, we present the PIQL query processing system and evaluate its scale independence on hundreds of machines using two benchmarks, TPC-W and SCADr.\n          <\/jats:p>","DOI":"10.14778\/2078331.2078334","type":"journal-article","created":{"date-parts":[[2014,6,24]],"date-time":"2014-06-24T12:17:57Z","timestamp":1403612277000},"page":"181-192","source":"Crossref","is-referenced-by-count":34,"title":["PIQL"],"prefix":"10.14778","volume":"5","author":[{"given":"Michael","family":"Armbrust","sequence":"first","affiliation":[{"name":"EECS, UC Berkeley"}]},{"given":"Kristal","family":"Curtis","sequence":"additional","affiliation":[{"name":"EECS, UC Berkeley"}]},{"given":"Tim","family":"Kraska","sequence":"additional","affiliation":[{"name":"EECS, UC Berkeley"}]},{"given":"Armando","family":"Fox","sequence":"additional","affiliation":[{"name":"EECS, UC Berkeley"}]},{"given":"Michael J.","family":"Franklin","sequence":"additional","affiliation":[{"name":"EECS, UC Berkeley"}]},{"given":"David A.","family":"Patterson","sequence":"additional","affiliation":[{"name":"EECS, UC Berkeley"}]}],"member":"320","published-online":{"date-parts":[[2011,11]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"Apache HBase 2011. http:\/\/hadoop.apache.org\/hbase\/.  Apache HBase 2011. http:\/\/hadoop.apache.org\/hbase\/."},{"key":"e_1_2_1_2_1","unstructured":"Google AppEngine: The Google Query Language 2011. http:\/\/code.google.com\/appengine\/docs\/python\/datastore\/.  Google AppEngine: The Google Query Language 2011. http:\/\/code.google.com\/appengine\/docs\/python\/datastore\/."},{"key":"e_1_2_1_3_1","volume-title":"SCADS: Scale-Independent Storage for Social Computing Applications. In Proc. of CIDR","author":"Armbrust M.","year":"2009"},{"key":"e_1_2_1_4_1","first-page":"131","volume-title":"Proc. of SoCC","author":"Armbrust M.","year":"2010"},{"key":"e_1_2_1_5_1","volume-title":"Guardian Technology Blog","author":"Arthur C.","year":"2009"},{"key":"e_1_2_1_6_1","volume-title":"Highly Available Storage for Interactive Services. In Proc. of CIDR","author":"Baker J.","year":"2011"},{"key":"e_1_2_1_7_1","volume-title":"New York Times","author":"Ball A. L.","year":"2010"},{"key":"e_1_2_1_8_1","volume-title":"Proc. of SIGMOD","author":"Brantner M.","year":"2008"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/253262.253302"},{"key":"e_1_2_1_10_1","first-page":"205","volume-title":"Bigtable: A Distributed Storage System for Structured Data. In Proc. of OSDI","author":"Chang F.","year":"2006"},{"key":"e_1_2_1_11_1","volume-title":"Journal of Discrete Algorithms","author":"Clifford R.","year":"2005"},{"issue":"2","key":"e_1_2_1_12_1","doi-asserted-by":"crossref","first-page":"1277","DOI":"10.14778\/1454159.1454167","volume":"1","author":"Cooper B. F.","year":"2008","journal-title":"Hosted Data Serving Platform. Proc. VLDB Endow."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1323293.1294281"},{"key":"e_1_2_1_14_1","doi-asserted-by":"crossref","first-page":"102","DOI":"10.1145\/375551.375567","volume-title":"Proc. of PODS","author":"Fagin R.","year":"2001"},{"key":"e_1_2_1_15_1","volume-title":"Proc. of ICDE, 2009","author":"Ganapathi A.","year":"2009"},{"key":"e_1_2_1_16_1","doi-asserted-by":"crossref","first-page":"285","DOI":"10.1145\/342009.335422","volume-title":"Proc. of. SIGMOD","author":"Goldman R.","year":"2000"},{"key":"e_1_2_1_17_1","doi-asserted-by":"crossref","unstructured":"G. Graefe. Query Evaluation Techniques for Large Databases. ACM Comput. Surv. 25(2):73--169 1993. 10.1145\/152610.152611   G. Graefe. Query Evaluation Techniques for Large Databases. ACM Comput. Surv . 25(2):73--169 1993. 10.1145\/152610.152611","DOI":"10.1145\/152610.152611"},{"key":"e_1_2_1_18_1","volume-title":"European Physical Journal B","author":"Hernando A.","year":"2010"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00778-004-0128-2"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1391729.1391730"},{"key":"e_1_2_1_21_1","first-page":"579","volume-title":"Proc. of SIGMOD","author":"Kossmann D.","year":"2010"},{"key":"e_1_2_1_22_1","volume-title":"ETH Zurich","author":"Kraska T.","year":"2010"},{"key":"e_1_2_1_23_1","first-page":"128","volume-title":"Proc. of VLDB","author":"Krishnamurthy R.","year":"1986"},{"key":"e_1_2_1_24_1","doi-asserted-by":"crossref","first-page":"5","DOI":"10.1145\/1582716.1582722","volume-title":"Proc. of PODC","author":"Lakshman A.","year":"2009"},{"key":"e_1_2_1_25_1","volume-title":"New York Times","author":"Rivlin G.","year":"2006"},{"key":"e_1_2_1_26_1","volume-title":"Velocity Web Performance and Operations Conference","author":"Schurman E.","year":"2009"},{"key":"e_1_2_1_27_1","unstructured":"R. Scoble. The you-don't-need-more-friends lobby. http:\/\/scobleizer.com\/2007\/10\/14\/the-you-dont-need-more-friends-lobby\/.  R. Scoble. The you-don't-need-more-friends lobby. http:\/\/scobleizer.com\/2007\/10\/14\/the-you-dont-need-more-friends-lobby\/."},{"key":"e_1_2_1_28_1","volume-title":"Proc. of FAST","author":"Trushkowsky B.","year":"2011"},{"key":"e_1_2_1_29_1","doi-asserted-by":"crossref","unstructured":"B. Urgaonkar etal An Analytical Model for Multi-tier Internet Services and Its Applications. June 2005.  B. Urgaonkar et al. An Analytical Model for Multi-tier Internet Services and Its Applications. June 2005.","DOI":"10.1145\/1064212.1064252"},{"key":"e_1_2_1_30_1","first-page":"99","volume-title":"Proc. of ICAC","author":"Watson B. J.","year":"2010"}],"container-title":["Proceedings of the VLDB Endowment"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.14778\/2078331.2078334","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,12,28]],"date-time":"2022-12-28T10:16:18Z","timestamp":1672222578000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.14778\/2078331.2078334"}},"subtitle":["success-tolerant query processing in the cloud"],"short-title":[],"issued":{"date-parts":[[2011,11]]},"references-count":30,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2011,11]]}},"alternative-id":["10.14778\/2078331.2078334"],"URL":"https:\/\/doi.org\/10.14778\/2078331.2078334","relation":{},"ISSN":["2150-8097"],"issn-type":[{"value":"2150-8097","type":"print"}],"subject":[],"published":{"date-parts":[[2011,11]]}}}