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)

Resumo


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.
Palavras-chave: UDF, Debug, REPL, MonetDB

Referências

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.
Publicado
02/10/2017
Como Citar

Selecione um Formato
HOLANDA, Pedro; RAASVELDT, Mark; KERSTEN, Martin. Don’t Keep My UDFs Hostage - Exporting UDFs For Debugging Purposes. In: SIMPÓSIO BRASILEIRO DE BANCO DE DADOS (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.