Automatic Partitioning of Database Applications

被引:25
|
作者
Cheung, Alvin [1 ]
Madden, Samuel [1 ]
Arden, Owen [2 ]
Myers, Andrew C. [2 ]
机构
[1] MIT, CSAIL, Cambridge, MA 02139 USA
[2] Cornell Univ, Dept Comp Sci, Ithaca, NY 14853 USA
来源
PROCEEDINGS OF THE VLDB ENDOWMENT | 2012年 / 5卷 / 11期
基金
美国国家科学基金会;
关键词
D O I
10.14778/2350229.2350262
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Database-backed applications are nearly ubiquitous in our daily lives. Applications that make many small accesses to the database create two challenges for developers: increased latency and wasted resources from numerous network round trips. A well-known technique to improve transactional database application performance is to convert part of the application into stored procedures that are executed on the database server. Unfortunately, this conversion is often difficult. In this paper we describe Pyxis, a system that takes database-backed applications and automatically partitions their code into two pieces, one of which is executed on the application server and the other on the database server. Pyxis profiles the application and server loads, statically analyzes the code's dependencies, and produces a partitioning that minimizes the number of control transfers as well as the amount of data sent during each transfer. Our experiments using TPC-C and TPC-W show that Pyxis is able to generate partitions with up to 3x reduction in latency and 1.7x improvement in throughput when compared to a traditional non-partitioned implementation and has comparable performance to that of a custom stored procedure implementation.
引用
收藏
页码:1471 / 1482
页数:12
相关论文
共 50 条
  • [1] Automatic data partitioning for irregular and adaptive applications
    Agrawal, G
    1998 INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING - PROCEEDINGS, 1998, : 587 - 594
  • [2] Building Secure Web Applications with Automatic Partitioning
    Chong, Stephen
    Liu, Jed
    Myers, Andrew C.
    Qi, Xin
    Vikram, K.
    Zheng, Lantian
    Zheng, Xin
    COMMUNICATIONS OF THE ACM, 2009, 52 (02) : 79 - 87
  • [3] Automatic MRI database exploration and applications
    Guimond, A
    Subsol, G
    Thirion, JP
    INTERNATIONAL JOURNAL OF PATTERN RECOGNITION AND ARTIFICIAL INTELLIGENCE, 1997, 11 (08) : 1345 - 1365
  • [4] Automatic partitioning for prototyping ubiquitous computing applications.
    Liogkas, N
    MacIntyre, B
    Mynatt, ED
    Smaragdakis, Y
    Tilevich, E
    Voida, S
    IEEE PERVASIVE COMPUTING, 2004, 3 (03) : 40 - 47
  • [5] Towards module-based automatic partitioning of Java applications
    Ying Zhang
    Gang Huang
    Wei Zhang
    Xuanzhe Liu
    Hong Mei
    Frontiers of Computer Science, 2012, 6 : 725 - 740
  • [6] Automatic Partitioning of MPI Operations in MPI plus OpenMP Applications
    Jammer, Tim
    Bischof, Christian
    HIGH PERFORMANCE COMPUTING - ISC HIGH PERFORMANCE DIGITAL 2021 INTERNATIONAL WORKSHOPS, 2021, 12761 : 191 - 198
  • [7] Automatic Test Generation for Mutation Testing on Database Applications
    Pan, Kai
    Wu, Xintao
    Xie, Tao
    2013 8TH INTERNATIONAL WORKSHOP ON AUTOMATION OF SOFTWARE TEST (AST), 2013, : 111 - 117
  • [8] AutoDBT: A framework for automatic testing of web database applications
    Ran, LH
    Dyreson, CE
    Andrews, A
    WEB INFORMATION SYSTEMS - WISE 2004, PROCEEDINGS, 2004, 3306 : 181 - 192
  • [9] Design of an automatic prover dedicated to the refinement of database applications
    Mammar, A
    Laleau, R
    FME 2003: FORMAL METHODS, PROCEEDINGS, 2003, 2805 : 834 - 854
  • [10] Database Backend as a Service: Automatic Generation, Deployment, and Management of Database Backends for Mobile Applications
    Francis Gropengießer
    Kai-Uwe Sattler
    Datenbank-Spektrum, 2014, 14 (2) : 85 - 95