Abstract
The paper concerns parallelized speculative support for query execution in RDBMS. The support is based on dynamic analysis of input query stream in databases serviced in SQLite. A multi-threaded middleware called the Speculative Layer is introduced which, based on a specific graph representation of a query stream, determines the most promising speculative queries for execution. The paper briefly presents the query graph modelling and analysis methods. Then, an extended version of speculative query execution algorithm is presented which allows combining results of multiple speculative queries for execution of one user input query. Experimental results are presented based on the proposed algorithm assessment in a multi-threaded testbed cooperating with a database serviced in SQLite.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Kaeli, D., Yew, P.: Speculative Execution in High Performance Computer Architectures. Chapman Hall/CRC, Boca Raton (2005)
Grama, A., Gupta, A., Karypis, G., Kumar, V.: Introduction to Parallel Computing, 2nd edn. Addison Wesley, Boston (2003)
Liles Jr., E.A., Wilner, B.: Branch prediction mechanism. IBM Tech. Discl. Bull. 22(7), 3013–3016 (1979)
Smith, J.E.: A study of branch prediction strategies. In: ISCA Conference Proceedings, New York, pp. 135–148 (1981)
Padua, D.: Encyclopedia of Parallel Computing A-D. Springer, Heidelberg (2011)
Polyzotis, N., Ioannidis, Y.: Speculative query processing. In: CIDR Conference Proceedings, Asilomar, pp. 1–12 (2003)
Karp, R.M., Miller, R.E., Winograd, S.: The organization of computations for uniform recurrence equations. J. ACM 14(3), 563–590 (1967)
Barish, G., Knoblock, C.A.: Speculative plan execution for information gathering. Artif. Intell. 172(4–5), 413–453 (2008)
Barish, G., Knoblock, C.A.: Speculative execution for information gathering plans. In: AIPS Conference Proceedings, Toulouse, pp. 184–193 (2002)
Hristidis, V., Papakonstantinou, Y.: Algorithms and applications for answering ranked queries using ranked views. VLDB J. 13(1), 49–70 (2004)
Reddy, P.K., Kitsuregawa, M.: Speculative locking protocols to improve performance for distributed database systems. IEEE Trans. Knowl. Data Eng. 16(2), 154–169 (2004)
Ragunathan, T., Krishna, R.P.: Performance enhancement of read-only transactions using speculative locking protocol, IRISS, Hyderabad (2007)
Ragunathan, T., Krishna, R.P.: Improving the performance of read-only transactions through asynchronous speculation. In: SpringSim Conference Proceedings, Ottawa, pp. 467–474 (2008)
Sasak-Okoń, A.: Speculative query execution in relational databases with graph modelling. In: Proceedings of the FEDCSIS, ACSIS, vol. 8, pp. 1383–1387 (2016)
Sasak-Okoń, A., Tudruj, M.: Graph-based speculative query execution in relational data-bases. In: ISPDC 2017, July 2017, Innsbruck, Austria, CPS. IEEE Explore (2017)
TPC benchmarks (2015). http://www.tpc.org/tpch/default.asp
Koutrika, G., Simitsis, A., Ioannidis, Y.: Conversational databases: explaining structured queries to users. Technical report Stanford InfoLab (2009)
Koutrika, G., Simitsis, A., Ioannidis, Y.: Explaining structured queries in natural language. In: ICDE Conference Proceedings, Long Beach, pp. 333–344 (2010)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Sasak-Okoń, A., Tudruj, M. (2018). Graph-Based Speculative Query Execution for RDBMS. In: Wyrzykowski, R., Dongarra, J., Deelman, E., Karczewski, K. (eds) Parallel Processing and Applied Mathematics. PPAM 2017. Lecture Notes in Computer Science(), vol 10777. Springer, Cham. https://doi.org/10.1007/978-3-319-78024-5_27
Download citation
DOI: https://doi.org/10.1007/978-3-319-78024-5_27
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-78023-8
Online ISBN: 978-3-319-78024-5
eBook Packages: Computer ScienceComputer Science (R0)