Steno: Automatic Optimization of Declarative Queries

被引:0
|
作者
Murray, Derek G. [1 ]
Isard, Michael [1 ]
Yu, Yuan [1 ]
机构
[1] Univ Cambridge, Comp Lab, Cambridge CB2 1TN, England
关键词
query optimization; abstract machines;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Declarative queries enable programmers to write data manipulation code without being aware of the underlying data structure implementation. By increasing the level of abstraction over imperative code, they improve program readability and, crucially, create opportunities for automatic parallelization and optimization. For example, the Language Integrated Query (LINQ) extensions to C# allow the same declarative query to process in-memory collections, and datasets that are distributed across a compute cluster. However, our experiments show that the serial performance of declarative code is several times slower than the equivalent hand-optimized code, because it is implemented using run-time abstractions-such as iterators-that incur overhead due to virtual function calls and superfluous instructions. To address this problem, we have developed Steno, which uses a combination of novel and well-known techniques to generate code for declarative queries that is almost as efficient as hand-optimized code. Steno translates a declarative LINQ query into type-specialized, inlined and loop-based imperative code. It eliminates chains of iterators from query execution, and optimizes nested queries. We have implemented Steno for uniprocessor, multiprocessor and distributed computing platforms, and show that, for a real-world distributed job, it can almost double the speed of end-to-end execution.
引用
收藏
页码:121 / 131
页数:11
相关论文
共 50 条
  • [1] Steno: Automatic Optimization of Declarative Queries
    Murray, Derek G.
    Isard, Michael
    Yu, Yuan
    ACM SIGPLAN NOTICES, 2011, 46 (06) : 121 - 131
  • [2] Comprehensive Optimization of Declarative Sensor Network Queries
    Galpin, Ixent
    Brenninkmeijer, Christian Y. A.
    Jabeen, Farhana
    Fernandes, Alvaro A. A.
    Paton, Norman W.
    SCIENTIFIC AND STATISTICAL DATABASE MANAGEMENT, PROCEEDINGS, 2009, 5566 : 339 - 360
  • [3] Declarative routing: Extensible routing with declarative queries
    Loo, BT
    Hellerstein, JM
    Stoica, I
    Ramakrishnan, R
    ACM SIGCOMM COMPUTER COMMUNICATION REVIEW, 2005, 35 (04) : 289 - 300
  • [4] Declarative Multidimensional Graph Queries
    Voigt, Hannes
    BUSINESS INTELLIGENCE (EBISS 2016), 2017, 280 : 1 - 37
  • [5] Automatic optimization of multi-paradigm declarative programs
    Moreno, G
    ADVANCES IN ARTIFICIAL INTELLIGENCE - IBERAMIA 2002, PROCEEDINGS, 2002, 2527 : 131 - 140
  • [6] ASSET Queries: A Declarative Alternative to MapReduce
    Chatziantoniou, Damianos
    Tzortzakakis, Elias
    SIGMOD RECORD, 2009, 38 (02) : 35 - 41
  • [7] Optimizing Video Queries with Declarative Clues
    Chao, Daren
    Chen, Yueting
    Koudas, Nick
    Yu, Xiaohui
    PROCEEDINGS OF THE VLDB ENDOWMENT, 2024, 17 (11): : 3256 - 3268
  • [8] Towards declarative queries on adaptive data structures
    Bruno, Nicolas
    Castro, Pablo
    2008 IEEE 24TH INTERNATIONAL CONFERENCE ON DATA ENGINEERING, VOLS 1-3, 2008, : 1249 - +
  • [9] Optimizing Declarative Graph Queries at Large Scale
    Zhang, Qizhen
    Acharya, Akash
    Chen, Hongzhi
    Arora, Simran
    Chen, Ang
    Liu, Vincent
    Loo, Boon Thau
    SIGMOD '19: PROCEEDINGS OF THE 2019 INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA, 2019, : 1411 - 1428
  • [10] Web service composition through declarative queries:: The case of conjunctive queries with union and negation
    Ludäscher, B
    Nash, A
    20TH INTERNATIONAL CONFERENCE ON DATA ENGINEERING, PROCEEDINGS, 2004, : 840 - 840