Don’t Keep My UDFs Hostage - Exporting UDFs For Debugging Purposes

  • Pedro Holanda Centrum Wiskunde & Informatica (CWI)
  • Mark Raasveldt Centrum Wiskunde & Informatica (CWI)
  • Martin Kersten Centrum Wiskunde & Informatica (CWI)

Abstract


User-defined functions (UDFs) are an integral part of performing in-database analytics. Executing data analysis inside a database provides significant improvements over traditional methods, such as close-to-the-data execution, low conversion overhead and automatic parallelization. However, UDFs have poor support for debugging. Since they are executed from within the database process, traditional debugging tools such as Integrated Development Environments (IDEs) and Read-Eval-Print Loops (REPLs) cannot be used during development. As a result, writing functional UDFs is challenging. In this paper, we present an extension to the open-source database system MonetDB that allows developers to debug their UDFs using modern debugging techniques.
Keywords: UDF, Debug, REPL, MonetDB

References

Hailpern, B. and Santhanam, P. (2002). Software debugging, testing, and verification. IBM Systems Journal, 41(1):4–12.

McConnell, S. (2004). Code complete. Pearson Education.

Pérez, F. and Granger, B. E. (2007). IPython: a system for interactive scientific computing. Computing in Science and Engineering, 9(3):21–29.

Raasveldt, M. and Mühleisen, H. (2016). Vectorized udfs in column-stores. In Proceedings of the 28th International Conference on Scientific and Statistical Database Management, SSDBM 2016, Budapest, Hungary, July 18-20, 2016, pages 16:1–16:12.

Raasveldt, M. and Mühleisen, H. (2017). Dont hold my data hostage-a case for client protocol redesign. Proceedings of the VLDB Endowment, 10(10):1022–1033.
Published
2017-10-02
HOLANDA, Pedro; RAASVELDT, Mark; KERSTEN, Martin. Don’t Keep My UDFs Hostage - Exporting UDFs For Debugging Purposes. In: BRAZILIAN SYMPOSIUM ON DATABASES (SBBD), 32. , 2017, Uberlândia/MG. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2017 . p. 246-251. ISSN 2763-8979. DOI: https://doi.org/10.5753/sbbd.2017.174636.