Abstract
A divergent design index is a tuning method that employs replication to specialize the index configuration of each replica in a replicated database for a subset of a workload to minimize the total processing cost of the workload. Studies show that this tuning method improves the workload performance in comparison with the case that all replicas have the same index configuration. Current divergent design algorithms do not have any mechanism to learn about the effectiveness of the recommended index sets. Moreover, they solely rely on the query optimizer’s cost estimation, which can be inaccurate.
To tackle these problems, we introduce a new divergent index advisor, DINA, that learns the goodness of the workload partitioning among replicas and the efficiency of their index configurations by employing a Deep Reinforcement Learning (DRL) algorithm. The DRL agent explores various possible workload partitions and learns the benefit of their index configurations via performance observation. We conduct experiments using the TPC-H and TPC-DS database benchmarks to evaluate the performance of DINA. The experiments show that DINA yields better query execution time than the existing algorithms.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Abadi, M., et al.: TensorFlow: a system for large-scale machine learning. In: 12th USENIX Symposium on Operating Systems Design and Implementation (OSDI 16), pp. 265–283 (2016)
Agrawal, S., Chaudhuri, S., Kollar, L., Marathe, A., Narasayya, V., Syamala, M.: Database tuning advisor for Microsoft SQL server 2005. In: Proceedings of the 2005 ACM SIGMOD International Conference on Management of Data (SIGMOD), pp. 930–932 (2005)
Basu, D., et al.: Cost-model oblivious database tuning with reinforcement learning. In: Chen, Q., Hameurlain, A., Toumani, F., Wagner, R., Decker, H. (eds.) DEXA 2015. LNCS, vol. 9261, pp. 253–268. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-22849-5_18
Agarap, A.F.: Deep learning using rectified linear units (ReLU). arXiv preprint arXiv:1803.08375 (2018)
Chaudhuri, S., Narasayya, V.: AutoAdmin “what-if” index analysis utility. ACM SIGMOD Rec. 27(2), 367–378 (1998)
CloudLab. https://www.cloudlab.us/
Comer, D.: The difficulty of optimum index selection. ACM Trans. Database Syst. (TODS) 3(4), 440–445 (1978)
Consens, M.P., Ioannidou, K., LeFevre, J., Polyzotis, N.: Divergent physical design tuning for replicated databases. In: Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data, pp. 49–60 (2012)
Dash, D., Polyzotis, N., Ailamaki, A.: CoPhy: a scalable, portable, and interactive index advisor for large workloads. PVLDB 4, 362–372 (2011)
Ding, B., Das, S., Marcus, R., Wu, W., Chaudhuri, S., Narasayya, V.R.: AI meets AI: leveraging query executions to improve index recommendations. In: Proceedings of the 2019 International Conference on Management of Data, pp. 1241–1258 (2019)
Durand, G.C., et al.: GridFormation: towards self-driven online data partitioning using reinforcement learning. In: Proceedings of the First International Workshop on Exploiting Artificial Intelligence Techniques for Data Management, pp. 1–7 (2018)
Hilprecht, B., Binnig, C., Röhm, U.: Learning a partitioning advisor for cloud databases. In: Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data (SIGMOD), pp. 143–157 (2020)
Keras. https://keras.io/
Krishnan, S., Yang, Z., Goldberg, K., Hellerstein, J.M., Stoica, I.: Learning to optimize join queries with deep reinforcement learning. CoRR arXiv preprint arXiv:1808.03196 (2018)
Lan, H., Bao, Z., Peng, Y.: An index advisor using deep reinforcement learning. In: Proceedings of the 29th ACM International Conference on Information & Knowledge Management, pp. 2105–2108 (2020)
Li, G., et al.: openGauss: an autonomous database system. Proc. VLDB Endow. 14(12), 3028–3042 (2021)
Li, G., Zhou, X., Li, S., Gao, B.: QTune: a query-aware database tuning system with deep reinforcement learning. Proc. VLDB Endow. 12(12), 2118–2130 (2019)
Ma, L., Van Aken, D., Hefny, A., Mezerhane, G., Pavlo, A., Gordon, G.J.: Query-based workload forecasting for self-driving database management systems. In: Proceedings of the 2018 International Conference on Management of Data, pp. 631–645 (2018)
Marcus, R., Papaemmanouil, O.: Deep reinforcement learning for join order enumeration. In: Proceedings of the First International Workshop on Exploiting Artificial Intelligence Techniques for Data Management, pp. 1–4 (2018)
Mnih, V., et al.: Human-level control through deep reinforcement learning. Nature 518(7540), 529–533 (2015)
Licks, G.P., et al.: SMARTIX: a database indexing agent based on reinforcement learning. Appl. Intell. 50(8), 2575–2588 (2020). https://doi.org/10.1007/s10489-020-01674-8
Papadomanolakis, S., Dash, D., Ailamaki, A.: Efficient use of the query optimizer for automated physical design. In: Proceedings of the 33rd International Conference on Very Large Data Bases, pp. 1093–1104 (2007)
Perera, R.M., Oetomo, B., Rubinstein, B.I., Borovica-Gajic, R.: DBA bandits: self-driving index tuning under ad-hoc, analytical workloads with safety guarantees. In: IEEE 37th International Conference on Data Engineering (ICDE), pp. 600–611 (2021)
Tran, Q.T., Jimenez, I., Wang, R., Polyzotis, N., Ailamaki, A.: RITA: an index-tuning advisor for replicated databases. In: Proceedings of the 27th International Conference on Scientific and Statistical Database Management, pp. 1–12 (2015)
Schaarschmidt, M., Kuhnle, A., Ellis, B., Fricke, K., Gessert, F., Yoneki, E.: LIFT: reinforcement learning in computer systems by learning from demonstrations. arXiv preprint arXiv:1808.07903 (2018)
Schnaitter, K., Abiteboul, S., Milo, T., Polyzotis, N.: On-line index selection for shifting workloads. In: IEEE 23rd International Conference on Data Engineering Workshop, pp. 459–468 (2007)
Sutton, R.S., Barto, A.G.: Reinforcement Learning: An Introduction. MIT Press, Cambridge (2018)
TPC: TPC-H benchmark. http://www.tpc.org/tpch/
TPC: TPC-DS benchmark. http://www.tpc.org/tpcds/
Sadri, Z., Gruenwald, L., Leal, E.: Online index selection using deep reinforcement learning for a cluster database. In: 2020 IEEE 36th International Conference on Data Engineering Workshops (ICDEW), pp. 158–161 (2020)
Sadri, Z., Gruenwald, L., Lead, E.: DRLindex: deep reinforcement learning index advisor for a cluster database. In: Proceedings of the 24th Symposium on International Database Engineering & Applications, pp. 1–8 (2020)
Zhang, J., et al.: An end-to-end automatic cloud database tuning system using deep reinforcement learning. In: Proceedings of the 2019 International Conference on Management of Data, pp. 415–432 (2019)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Sadri, Z., Gruenwald, L. (2022). A Divergent Index Advisor Using Deep Reinforcement Learning. In: Strauss, C., Cuzzocrea, A., Kotsis, G., Tjoa, A.M., Khalil, I. (eds) Database and Expert Systems Applications. DEXA 2022. Lecture Notes in Computer Science, vol 13426. Springer, Cham. https://doi.org/10.1007/978-3-031-12423-5_11
Download citation
DOI: https://doi.org/10.1007/978-3-031-12423-5_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-12422-8
Online ISBN: 978-3-031-12423-5
eBook Packages: Computer ScienceComputer Science (R0)