Program Transformations for Asynchronous and Batched Query Submission

被引:12
|
作者
Ramachandra, Karthik [1 ]
Chavan, Mahendra [2 ]
Guravannavar, Ravindra [3 ]
Sudarshan, S. [1 ]
机构
[1] Indian Inst Technol, Dept Comp Sci & Engn, Bombay 400076, Maharashtra, India
[2] SAP, Pune, Maharashtra, India
[3] IIT Hyderabad, Dept Comp Sci & Engn, Hyderabad, Andhra Pradesh, India
关键词
Query optimization; program analysis; program transformation; PREFETCH;
D O I
10.1109/TKDE.2014.2334302
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
The performance of database/web-service backed applications can be significantly improved by asynchronous submission of queries/requests well ahead of the point where the results are needed, so that results are likely to have been fetched already when they are actually needed. However, manually writing applications to exploit asynchronous query submission is tedious and error-prone. In this paper, we address the issue of automatically transforming a program written assuming synchronous query submission, to one that exploits asynchronous query submission. Our program transformation method is based on data flow analysis and is framed as a set of transformation examples. Our examples can handle query executions within loops, unlike some of the earlier work in this area. We also present a novel approach that, at runtime, can combine multiple asynchronous requests into batches, thereby achieving the benefits of batching in addition to that of asynchronous submission. We have built a tool that implements our transformation techniques on Java programs that use JDBC calls; our tool can be extended to handle Web service calls. We have carried out a detailed experimental study on several real-life applications, which shows the effectiveness of the proposed rewrite techniques, both in terms of their applicability and the performance gains achieved.
引用
收藏
页码:531 / 544
页数:14
相关论文
共 50 条
  • [31] The Impact of Program Transformations on Static Program Analysis
    Namjoshi, Kedar S.
    Pavlinovic, Zvonimir
    STATIC ANALYSIS (SAS 2018), 2018, 11002 : 306 - 325
  • [32] Evaluating an asynchronous graduate degree program
    Hislop, GW
    FRONTIERS IN EDUCATION 1997 - 27TH ANNUAL CONFERENCE, PROCEEDINGS, BOLS I - III, 1997, : 437 - 440
  • [33] A SYNTACTIC APPROACH TO PROGRAM TRANSFORMATIONS
    ARIOLA, ZM
    ARVIND
    SIGPLAN NOTICES, 1991, 26 (09): : 116 - 129
  • [34] Program Transformations in the POLCA Project
    Kuper, Jan
    Schubert, Lutz
    Kempf, Kilian
    Glass, Colin
    Bonilla, Daniel Rubio
    Carro, Manuel
    PROCEEDINGS OF THE 2016 DESIGN, AUTOMATION & TEST IN EUROPE CONFERENCE & EXHIBITION (DATE), 2016, : 882 - 887
  • [35] Program transformations for information personalization
    Perugini, Saverio
    Ramakrishnan, Naren
    COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2010, 36 (03) : 223 - 249
  • [36] Probabilistically Accurate Program Transformations
    Misailovic, Sasa
    Roy, Daniel M.
    Rinard, Martin C.
    STATIC ANALYSIS, 2011, 6887 : 316 - 333
  • [37] REUSABILITY THROUGH PROGRAM TRANSFORMATIONS
    CHEATHAM, TE
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 1984, 10 (05) : 589 - 594
  • [38] Digital to hybrid program transformations
    Kohn, W
    Remmel, JB
    PROCEEDINGS OF THE 1996 IEEE INTERNATIONAL SYMPOSIUM ON INTELLIGENT CONTROL, 1996, : 342 - 347
  • [39] PROGRAM TRANSFORMATIONS IN A DENOTATIONAL SETTING
    NIELSON, F
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1985, 7 (03): : 359 - 379
  • [40] PROBLEM OF EQUIVALENT PROGRAM TRANSFORMATIONS
    PODLOVCHENKO, RI
    PROGRAMMING AND COMPUTER SOFTWARE, 1986, 12 (06) : 257 - 266