@article{Schildgen, author = {Schildgen, Johannes}, title = {Interaktive Vorlesungsfolien mit SQL-Unterst{\"u}tzung}, series = {Datenbank-Spektrum}, volume = {21}, journal = {Datenbank-Spektrum}, number = {1}, publisher = {Springer Nature}, doi = {10.1007/s13222-020-00364-6}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:898-opus4-26059}, pages = {19 -- 27}, abstract = {Mit PowerPoint oder LaTeX Beamer erstellte Vorlesungsfolien sind meist statisch und dienen haupts{\"a}chlich der Pr{\"a}sentation von Lehrinhalten. Als Alternative dazu werden drei Erweiterungen f{\"u}r das HTML- und JavaScript-basierte Pr{\"a}sentationsframework reveal.js vorgestellt, die f{\"u}r mehr Interaktion in der Datenbankenlehre sorgen sollen: (1) Eine Live-Ausf{\"u}hrung von SQL-Anfragen und eine Darstellung des Anfrageergebnisses direkt auf der Folie; mit M{\"o}glichkeit zur Anpassung der Anfrage im Pr{\"a}sentationsbetrieb, (2) eine JSON-basierte Beschreibung von ER-Diagrammen, welche graphisch auf den Folien dargestellt werden sollen und (3) eingebettete Smartphone-Umfragen, um zwischendurch - ohne einen Kontextwechsel - Quiz-Fragen zu stellen.}, language = {de} } @misc{Schildgen, author = {Schildgen, Johannes}, title = {Sprachkurs Java}, edition = {1. Aufl.}, publisher = {oomoxx media e.K.}, address = {Cuxhafen}, isbn = {9783944787404}, pages = {609 Minuten}, abstract = {Java ist eine der popul{\"a}rsten Programmiersprachen {\"u}berhaupt. Lerne in diesem H{\"o}rbuch die Sprache Java und die Konzepte der objektorientierten Programmierung kennen, egal ob bei der Autofahrt, beim Putzen oder Kochen. Wir beginnen mit den Grundlagen {\"u}bers Programmieren im Allgemeinen. Ein Vorwissen in einer Programmiersprache ist zwar hilfreich, aber absolut nicht notwendig. Du lernst, was Variablen, Schleifen, Klassen und Methoden sind und wie du sie verwendest. Eines der wichtigsten Konzepte der objektorientierten Programmierung nennt sich Vererbung. Daher wirst du alles dazu lernen, was du wissen musst. Auch den Umgang mit Exceptions und mit Dateien will ich dir ans Herz legen. Du lernst zudem die verschiedenen Collection-Types, Generics und Lambda-Ausdr{\"u}cke kennen. Außerdem gibt's am Ende noch einen Ausblick, der zeigt, was du mit Java alles programmieren kannst: Android-Apps, GUI-Anwendungen, Web-Apps und vieles mehr. Programmieren lernen mit einem H{\"o}rbuch ist ein innovatives Format und bietet interaktive M{\"o}glichkeiten der Lernkontrolle in Form von Quiz-Fragen, bei denen du als H{\"o}rer aktiv mitmachen kannst.}, language = {de} } @article{WoltmannVolkDinzingeretal., author = {Woltmann, Lucas and Volk, Peter and Dinzinger, Michael and Gr{\"a}f, Lukas and Strasser, Sebastian and Schildgen, Johannes and Hartmann, Claudio and Lehner, Wolfgang}, title = {Data Science Meets High-Tech Manufacturing - The BTW 2021 Data Science Challenge}, series = {Datenbank-Spektrum}, volume = {45}, journal = {Datenbank-Spektrum}, publisher = {Springer Nature}, doi = {10.1007/s13222-021-00398-4}, pages = {5 -- 10}, abstract = {For its third installment, the Data Science Challenge of the 19th symposium "Database Systems for Business, Technology and Web" (BTW) of the Gesellschaft f{\"u}r Informatik (GI) tackled the problem of predictive energy management in large production facilities. For the first time, this year's challenge was organized as a cooperation between Technische Universit{\"a}t Dresden, GlobalFoundries, and ScaDS.AI Dresden/Leipzig. The Challenge's participants were given real-world production and energy data from the semiconductor manufacturer GlobalFoundries and had to solve the problem of predicting the energy consumption for production equipment. The usage of real-world data gave the participants a hands-on experience of challenges in Big Data integration and analysis. After a leaderboard-based preselection round, the accepted participants presented their approach to an expert jury and audience in a hybrid format. In this article, we give an overview of the main points of the Data Science Challenge, like organization and problem description. Additionally, the winning team presents its solution.}, language = {en} } @inproceedings{SchildgenDessloch, author = {Schildgen, Johannes and Deßloch, Stefan}, title = {SQL-Grundlagen spielend lernen mit dem Text-Adventure SQL Island}, series = {Datenbanksysteme f{\"u}r Business, Technologie und Web : (BTW 2015) ; 16. Fachtagung des GI-Fachbereichs "Datenbanken und Informationssysteme" (DBIS), 04. - 06.03.2015 in Hamburg, Germany}, volume = {241}, booktitle = {Datenbanksysteme f{\"u}r Business, Technologie und Web : (BTW 2015) ; 16. Fachtagung des GI-Fachbereichs "Datenbanken und Informationssysteme" (DBIS), 04. - 06.03.2015 in Hamburg, Germany}, publisher = {Gesellschaft f{\"u}r Informatik e.V.}, pages = {687 -- 690}, abstract = {Wir pr asentieren SQL Island, ein neuartiges browserbasiertes Lernspiel,welches auf dem Konzept der Text-Adventures basiert. Nach einem Flugzeugabsturzlandet die Spielfigur auf einer Insel. Man redet mit Bewohnern, sammelt Gegenst ̈andeund k ̈apft gegen B ̈osewichte. Die Besonderheit bei diesem Spiel ist jedoch, dass derSpieler seine Figur lediglich mittels SQL-Befehlen steuert. Alle n ̈otigen Befehle wer-den zun ̈achst pr ̈asentiert, sodass keine Vorerfahrung notwendig ist. Nach etwa einerStunde Spielzeit beherrscht der Spieler SELECT-, UPDATE- und DELETE-Anfragensowie Gruppierungen, Aggregationsfunktionen und Joins. Das Spiel kann online aufhttp://www.sql-island.de kostenlos und ohne Registrierung gespielt werden.}, language = {de} } @inproceedings{HeinzSchildgen, author = {Heinz, Florian and Schildgen, Johannes}, title = {A Data Model and Operations for Higher-Dimensional Moving Objects in Databases}, series = {EMODE '23: Proceedings of the 1st ACM SIGSPATIAL International Workshop on Methods for Enriched Mobility Data: Emerging issues and Ethical perspectives 2023, Hamburg, 23 November 2023}, booktitle = {EMODE '23: Proceedings of the 1st ACM SIGSPATIAL International Workshop on Methods for Enriched Mobility Data: Emerging issues and Ethical perspectives 2023, Hamburg, 23 November 2023}, publisher = {ACM}, isbn = {979-8-4007-0347-8}, doi = {10.1145/3615885.3628006}, pages = {30 -- 39}, abstract = {Moving Object Databases are designed to store and process database objects with attributes that can change over time. Simple examples are moving points, that change position over time, a bit more complex are moving regions, that can also change shape. The spatial and spatiotemporal object types in current moving objects databases are limited to two dimensions. This work strives to extend the set of spatial moving object types into the third and even higher dimensions while preserving a consistent family of operations for it. A robust algorithm for the interpolation of two regions to a moving region of any dimensionality is developed, as well as the fundamental ideas for several other operations.}, language = {en} } @article{SchoenenwaldKernViehhauseretal., author = {Schoenenwald, Alexander and Kern, Simon and Viehhauser, Josef and Schildgen, Johannes}, title = {Collecting and visualizing data lineage of Spark jobs}, series = {Datenbank-Spektrum}, volume = {21}, journal = {Datenbank-Spektrum}, number = {3}, publisher = {Springer Nature}, doi = {10.1007/s13222-021-00387-7}, pages = {179 -- 189}, abstract = {Metadata management constitutes a key prerequisite for enterprises as they engage in data analytics and governance. Today, however, the context of data is often only manually documented by subject matter experts, and lacks completeness and reliability due to the complex nature of data pipelines. Thus, collecting data lineage—describing the origin, structure, and dependencies of data—in an automated fashion increases quality of provided metadata and reduces manual effort, making it critical for the development and operation of data pipelines. In our practice report, we propose an end-to-end solution that digests lineage via (Py‑)Spark execution plans. We build upon the open-source component Spline, allowing us to reliably consume lineage metadata and identify interdependencies. We map the digested data into an expandable data model, enabling us to extract graph structures for both coarse- and fine-grained data lineage. Lastly, our solution visualizes the extracted data lineage via a modern web app, and integrates with BMW Group's soon-to-be open-sourced Cloud Data Hub.}, language = {en} } @inproceedings{HauboldSchildgenScherzingeretal., author = {Haubold, Florian and Schildgen, Johannes and Scherzinger, Stefanie and Deßloch, Stefan}, title = {ControVol Flex: Flexible Schema Evolution for NoSQL Application Development}, series = {Datenbanksysteme f{\"u}r Business, Technologie und Web (BTW 2017) : 17. Fachtagung des GI-Fachbereichs "Datenbanken und Informationssyteme" (DBIS) : 06.-10.03.2017 in Stuttgart Deutschland}, booktitle = {Datenbanksysteme f{\"u}r Business, Technologie und Web (BTW 2017) : 17. Fachtagung des GI-Fachbereichs "Datenbanken und Informationssyteme" (DBIS) : 06.-10.03.2017 in Stuttgart Deutschland}, editor = {Mitschang, Bernhard}, publisher = {Gesellschaft f{\"u}r Informatik e.V. (GI)}, address = {Bonn}, abstract = {We demonstrate ControVol Flex, an Eclipse plugin for controlled schema evolution in Java applications backed by NoSQL document stores. The sweet spot of our tool are applications that are deployed continuously against the same production data store: Each new release may bring about schema changes that conflict with legacy data already stored in production. The type system internal to the predecessor tool ControVol is able to detect common schema conflicts, and enables developers to resolve them with the help of object-mapper annotations. Our new tool ControVol Flex lets developers choose their schema-migration strategy, whether all legacy data is to be migrated eagerly by means of NotaQL transformation scripts, or lazily, as declared by object-mapper annotations. Our tool is even capable of carrying out both strategies in combination, eagerly migrating data in the background, while lazily migrating data that is meanwhile accessed by the application. From the viewpoint of the application, it remains transparent how legacy data is migrated: Every read access yields an entity that matches the structure that the current application code expects. Our live demo shows how ControVol Flex gracefully solves a broad range of common schema-evolution tasks.}, language = {en} } @inproceedings{SchildgenHeinzOlijnyketal., author = {Schildgen, Johannes and Heinz, Florian and Olijnyk, Andreas and Lindenau, Arvid}, title = {Using SQL/MED to Query Heterogeneous Data Sources with Alexa Voice Commands}, series = {Datenbanksysteme f{\"u}r Business, Technologie und Web (BTW2023), 06.-10. M{\"a}rz 2023, Dresden}, booktitle = {Datenbanksysteme f{\"u}r Business, Technologie und Web (BTW2023), 06.-10. M{\"a}rz 2023, Dresden}, publisher = {Gesellschaft f{\"u}r Informatik e.V.}, address = {Bonn}, isbn = {978-3-88579-725-8}, doi = {10.18420/BTW2023-53}, pages = {821 -- 828}, abstract = {Typical Alexa skills and other add-ons for voice assistants need to be custom developed for their one specific use case. This paper presents an approach to map arbitrary data sources (databases, APIs, services) to the relational model by using SQL/MED and to transform voice-based queries into SQL. The key challenges for such a universal skill are to correctly map the natural-language question into a SQL query on the correct source table in the federated database and to convert the result set back to a compact and well-understandable answer.}, language = {en} } @inproceedings{Schildgen, author = {Schildgen, Johannes}, title = {MonstER Park - The Entity-Relationship-Diagram Learning Game}, series = {ER Forum, Demo and posters 2020, co-located with 39th International Conference on Conceptual Modeling (ER 2020): Vienna, Austria, November 3-6, 2020}, booktitle = {ER Forum, Demo and posters 2020, co-located with 39th International Conference on Conceptual Modeling (ER 2020): Vienna, Austria, November 3-6, 2020}, pages = {8}, abstract = {In computer science, game-based learning is an exciting and entertaining way to learn a programming language or coding fundamentals. MonstER Park is a game which applies this concept to entityrelationship models (ERM) an teach it in an easy, fun, and effective way. The plot of the game is about a theme park named MonstER Park that is opening soon, but it's not yet ready. The player of the game has to talk to little monsters and create an ER diagram step-by-step. The player gets instant feedback, and the game continues after correctly solving a task. On completion of a game, the player knows the following fundamentals of ER diagrams and can download a certificate: entity types, (recursive) relationships, (complex, multi-valued) attributes, (compound) primary keys, generalization. The game is free and available at https://www.monst-er.de without any registration.}, language = {en} } @inproceedings{SchildgenRosin, author = {Schildgen, Johannes and Rosin, Jessica}, title = {Game-based Learning of SQL Injections}, series = {Proceedings of the 1st ACM SIGMOD International Workshop on Data Systems Education: Bridging Education Practice with Education Research (DataEd 2022): 17 June 2022, Philadelphia, PA, USA}, booktitle = {Proceedings of the 1st ACM SIGMOD International Workshop on Data Systems Education: Bridging Education Practice with Education Research (DataEd 2022): 17 June 2022, Philadelphia, PA, USA}, publisher = {ACM}, doi = {10.1145/3531072.3535321}, pages = {22 -- 25}, abstract = {SQL injections are one of the most widely used techniques to attack data-driven applications. Thus, the potential for cyber-attacks increases consistently. To create awareness of hacker attacks, we demonstrate a web-based educational game. The game shows how SQL injections work and which kind of attacks they enable, e.g., logging in without knowing a user's password, deleting data or retrieving secret or sensitive data. At each level, the players have to fill out login or search forms or use URL parameters to attack an example retail website. While solving these tasks, players can look at the SQL query and the application code. The players learn how SQL injections work, how dangerous they are, and how to make their own applications more robust against SQL injections, for example by using prepared statements.}, language = {en} } @article{Schildgen, author = {Schildgen, Johannes}, title = {Innovationen im Lernen von Java-Grundlagen}, series = {Java aktuell}, volume = {3}, journal = {Java aktuell}, publisher = {DOAG Dienstleistungen}, address = {Berlin}, pages = {47 -- 51}, abstract = {Ob in der Schule, im Studium oder Selbststudium: Die M{\"o}glichkeiten und Techniken, Java zu lernen, haben sich in den vergangenen Jahren entscheidend weiterentwickelt. Dieser Artikel gibt einen Einblick in innovative M{\"o}glichkeiten des Java-Lernens sowie einen Ausblick, der zeigt, dass sich nicht nur Programmiersprachen weiterentwickeln, sondern auch der Weg, wie wir sie lernen und lehren.}, language = {de} } @inproceedings{SchildgenKrueckDessloch, author = {Schildgen, Johannes and Kr{\"u}ck, Yannick and Deßloch, Stefan}, title = {Transformations on Graph Databases for Polyglot Persistence with NotaQL}, series = {Datenbanksysteme f{\"u}r Business, Technologie und Web, 17. Fachtagung des GI-Fachbereichs "Datenbanken und Informationssyteme" (DBIS) : 06.-10.03.2017 in Stuttgart, Deutschland (BTW 2017)}, booktitle = {Datenbanksysteme f{\"u}r Business, Technologie und Web, 17. Fachtagung des GI-Fachbereichs "Datenbanken und Informationssyteme" (DBIS) : 06.-10.03.2017 in Stuttgart, Deutschland (BTW 2017)}, number = {CD-ROM}, editor = {Mitschang, Bernhard and Nicklas, Daniela and Leymann, Frank and Sch{\"o}ning, Harald and Herschel, Melanie and Teubner, Jens and H{\"a}rder, Theo and Kopp, Oliver and Wieland, Matthias}, publisher = {Gesellschaft f{\"u}r Informatik, Bonn}, pages = {83 -- 102}, language = {en} } @inproceedings{BraunSchildgenDessloch, author = {Braun, Stefan and Schildgen, Johannes and Deßloch, Stefan}, title = {Visualization of NoSQL transformations using sampling techniques | Visualisierung von NoSQL-Transformationen unter der Verwendung von Sampling-Techniken}, series = {Proceedings of the LWA 2015 workshops: KDML, FGWM, IR, and FGDB : Trier, Germany, October 7-9, 2015}, booktitle = {Proceedings of the LWA 2015 workshops: KDML, FGWM, IR, and FGDB : Trier, Germany, October 7-9, 2015}, publisher = {RWTH Aachen}, address = {Aachen}, pages = {427 -- 438}, abstract = {Analysen auf NoSQL-Datenbanken sind oft langdauernd und die Ergebnisse fur den Benutzer haufig schwer verst ̈andlich. Wir prasentieren eine M{\"o}glichkeit, Datenmengen aus Wide-Column Stores mittels der Transformationssprache NotaQL zu transformieren sowie zu aggregieren und die Ergebnisse in Form von Diagrammen dem Benutzer darzustellen. Dabei kommen Sampling-Techniken zum Einsatz, um die Berechnung auf Kosten der Genauigkeit zu beschleunigen. Das von uns verwendete iterative Samplingverfahren sorgt fur eine kontinuierliche Verbesserung der Berechnungsgenauigkeit und bietet zudem M{\"o}glichkeiten zur Genauigkeitsabsch{\"a}tzung, die in Form von Konfidenzintervallen in den Diagrammen dargestellt werden kann.}, language = {en} } @inproceedings{SchildgenDessloch, author = {Schildgen, Johannes and Deßloch, Stefan}, title = {NotaQL is not a query language! It's for data transformation on wide-column stores}, series = {Data Science : 30th British International Conference on Databases, BICOD 2015 Edingburgh, UK, July 6-8, 2015, Proceedings}, volume = {9147}, booktitle = {Data Science : 30th British International Conference on Databases, BICOD 2015 Edingburgh, UK, July 6-8, 2015, Proceedings}, editor = {Maneth, Sebastian}, publisher = {Springer Nature}, isbn = {978-3-319-20423-9}, issn = {1611-3349}, doi = {10.1007/978-3-319-20424-6_14}, pages = {139 -- 151}, abstract = {It is simple to query a relational database because all columns of the tables are known and the language SQL is easily applicable. In NoSQL, there usually is no fixed schema and no query language. In this article, we present NotaQL, a data-transformation language for wide-column stores. NotaQL is easy to use and powerful. Many MapReduce algorithms like filtering, grouping, aggregation and even breadth-first-search, PageRank and other graph and text algorithms can be expressed in two or three short lines of code.}, language = {en} } @inproceedings{SchildgenLottermannDessloch, author = {Schildgen, Johannes and Lottermann, Thomas and Deßloch, Stefan}, title = {Cross-system NoSQL data transformations with NotaQL}, series = {BeyondMR '16: Proceedings of the 3rd ACM SIGMOD Workshop on Algorithms and Systems for MapReduce and BeyondJune 2016}, booktitle = {BeyondMR '16: Proceedings of the 3rd ACM SIGMOD Workshop on Algorithms and Systems for MapReduce and BeyondJune 2016}, publisher = {ACM}, doi = {10.1145/2926534.2926535}, pages = {1 -- 10}, abstract = {The rising adoption of NoSQL technology in enterprises causes a heterogeneous landscape of different data stores. Different stores provide distinct advantages and disadvantages, making it necessary for enterprises to facilitate multiple systems for specific purposes. This resulting polyglot persistence is difficult to handle for developers since some data needs to be replicated and aggregated between different and within the same stores. Currently, there are no uniform tools to perform these data transformations since all stores feature different APIs and data models. In this paper, we present the transformation language NotaQL that allows cross-system data transformations. These transformations are output-oriented, meaning that the structure of a transformation script is similar to that of the output. Besides, we provide an aggregation-centric approach, which makes aggregation operations as easy as possible.}, language = {en} } @article{SchildgenJoergDossingeretal., author = {Schildgen, Johannes and J{\"o}rg, Thomas and Dossinger, Manuel and Deßloch, Stefan}, title = {Marimba: A framework for making MapReduce jobs incremental}, series = {Proceedings - 2014 IEEE International Congress on Big Data, BigData Congress 2014, 27 June 2014 - 02 July 2014, Anchorage, AK, USA}, journal = {Proceedings - 2014 IEEE International Congress on Big Data, BigData Congress 2014, 27 June 2014 - 02 July 2014, Anchorage, AK, USA}, publisher = {IEEE}, doi = {10.1109/BigData.Congress.2014.27}, abstract = {Many MapReduce jobs for analyzing Big Data require many hours and have to be repeated again and again because the base data changes continuously. In this paper we propose Marimba, a framework for making MapReduce jobs incremental. Thus, a recomputation of a job only needs to process the changes since the last computation. This accelerates the execution and enables more frequent recomputations, which leads to results which are more up-to-date. Our approach is based on concepts that are popular in the area of materialized views in relational database systems where a view can be updated only by aggregating changes in base data upon the previous result.}, language = {en} } @book{Schildgen, author = {Schildgen, Johannes}, title = {MongoDB kompakt}, publisher = {Books on Demand GmbH}, address = {Norderstedt}, organization = {Books on Demand GmbH}, isbn = {9783756891269}, pages = {138}, abstract = {Die Dokumentendatenbank MongoDB ist das am weitesten verbreitete NoSQL-Datenbanksystem. Dieses kompakte Werk pr{\"a}sentiert MongoDB von der Installation bis zur Administrierung in großen Rechenclustern. Sie erfahren, wie Sie JSON-Dokumente in Kollektionen einf{\"u}gen, suchen, {\"a}ndern und l{\"o}schen, wie man Replikation und Sharding effektiv einsetzt und wie Sie komplexe Analysen mithilfe der Aggregation-Pipeline durchf{\"u}hren k{\"o}nnen.}, language = {de} } @inproceedings{SchlagerSchildgen, author = {Schlager, Reinhold and Schildgen, Johannes}, title = {A Query-Rewriting-based Implementation for Temporal Data Management}, series = {LWDA'24: Lernen, Wissen, Daten, Analysen. September 23-25, 2024, W{\"u}rzburg, Germany}, booktitle = {LWDA'24: Lernen, Wissen, Daten, Analysen. September 23-25, 2024, W{\"u}rzburg, Germany}, pages = {14 Seiten}, abstract = {Temporal data management is used to query historical data, identify trends and changes, and make forecasts for the future. This paper provides a query-rewriting approach to implement temporal data management in the data-warehouse system Exasol by using so-called preprocessor scripts. Preprocessor scripts allow for executing custom Lua code and modifying SQL commands. Our approach does not need to undertake additional manual effort by the user. History tables and associated views are created in the background. Data records are automatically archived if they are updated or deleted, and the SELECT command is extended with the AS OF SYSTEM TIME clause as proposed by the SQL Standard.}, language = {en} } @inproceedings{SchildgenHeinz, author = {Schildgen, Johannes and Heinz, Florian}, title = {Interactive SQL Queries and Program Code in Presentations}, series = {Datenbanksysteme f{\"u}r Business, Technologie und Web (BTW2023), 06.-10. M{\"a}rz 2023, Dresden}, booktitle = {Datenbanksysteme f{\"u}r Business, Technologie und Web (BTW2023), 06.-10. M{\"a}rz 2023, Dresden}, publisher = {Gesellschaft f{\"u}r Informatik e.V.}, address = {Bonn}, isbn = {978-3-88579-725-8}, doi = {10.18420/BTW2023-39}, pages = {687 -- 693}, abstract = {Nowadays, most database lectures are performed with an accompanying visual presentation that further illustrates the conveyed facts. Conventional presentation software allows dynamic elements up to a certain level, for example revealing or changing parts of the slide step by step, or even an interaction with the viewers by means of polls or similar mechanisms. Recently, HTML-and browser-based frameworks for presentations have emerged, which allow an even higher degree of flexibility due to the manifold possibilities of HTML5 and JavaScript. This paper presents an approach of how to interactively modify parts of a slide during the presentation, like SQL-based queries or program code snippets, and show the results pretty-printed on the corresponding slide in real-time. This enables the lecturer to easily show more examples, and answer and illustrate side questions, which they did not prepare in advance.}, language = {en} } @inproceedings{SchildgenHeinz, author = {Schildgen, Johannes and Heinz, Florian}, title = {A Showcase of LLMs in Action: SQL Generation from Natural Language (Demo Paper)}, series = {Datenbanksysteme f{\"u}r Business, Technologie und Web - Workshopband (BTW 2025)}, booktitle = {Datenbanksysteme f{\"u}r Business, Technologie und Web - Workshopband (BTW 2025)}, publisher = {Gesellschaft f{\"u}r Informatik}, address = {Bonn}, doi = {10.18420/BTW2025-47}, pages = {819 -- 825}, abstract = {Today, large language models are a very efficient tool for human-computer interaction using natural language. Chatbots like ChatGPT and their corresponding APIs can be used to solve a large variety of tasks that are provided in human-comprehensible sentences, for example generating SQL queries. Executing spoken SQL queries in a database system poses a challenge, because the various syntactical details of SQL are usually not provided verbally. Here, the LLM can help to augment the recognized raw query with the syntax elements needed for successful execution. Furthermore, the correct spelling of table and column names can be derived from the database schema provided in the LLM prompt. This work showcases four use cases in which LLMs assist in querying database systems: (1) A plugin for phpMyAdmin for voice-query input in natural language, (2) a chart generator, (3) an Alexa skill, and (4) a speech-controlled action game SQL Invaders.}, language = {en} } @inproceedings{HeinzSchildgen, author = {Heinz, Florian and Schildgen, Johannes}, title = {SQLinked - A Hybrid Approach for Local and Database-Remote Program Execution}, series = {Datenbanksysteme f{\"u}r Business, Technologie und Web - Workshopband (BTW 2025)}, booktitle = {Datenbanksysteme f{\"u}r Business, Technologie und Web - Workshopband (BTW 2025)}, publisher = {Gesellschaft f{\"u}r Informatik}, address = {Bonn}, doi = {10.18420/BTW2025-128}, pages = {257 -- 263}, abstract = {When working with today's relational databases, there is usually a clear boundary between the database server and the application, that interfaces with the database system using the query language SQL. The concept of stored procedures allows to move complex parts of the business logic into the database server for various reasons, as, for instance, to reduce the latency of ELT processes that involve several database queries building on each other like distributing records into tables according to their attribute values. Creating and maintaining such stored procedures can be a challenging task, however. The idea pursued in this paper is to create a programming language, as well as a compilation and execution environment that allows the user to mark parts of the application code for being automatically compiled to and later be executed as a stored procedure in the database instead of the execution environment of the actual application. This blurs the border between database and application and provides a natural and maintenance-friendly way for offloading latency sensitive parts of the code to the database system.}, language = {en} } @article{HeinzSchildgen, author = {Heinz, Florian and Schildgen, Johannes}, title = {Experience Report: Hey LLM, Generate SQL!}, series = {Datenbank-Spektrum}, volume = {25}, journal = {Datenbank-Spektrum}, number = {2}, publisher = {Springer}, address = {Wiesbaden}, doi = {10.1007/s13222-025-00512-w}, pages = {95 -- 101}, abstract = {Large Language Models have advanced to a resourceful tool with many applications. One particularly interesting use case is the LLM-aided generation of ad-hoc database queries and the possibility of subsequent processing of the results in a way suiting the users intents. In this article, practical ways and experiences are described on how to effectively use LLMs to map a natural-language user query to an SQL query conforming to a specific database schema and post-processing the results of this query in order to, for example, create an appealing visualization. Best results are achieved under favorable circumstances, as, for example, a clean and meaningful named database schema.}, language = {en} } @article{Schildgen, author = {Schildgen, Johannes}, title = {Individuelle Data-Warehousing-Projekte anstelle einer Abschlussklausur}, series = {Datenbank-Spektrum}, journal = {Datenbank-Spektrum}, publisher = {Springer}, issn = {1618-2162}, doi = {10.1007/s13222-025-00502-y}, pages = {4}, abstract = {Dieser Artikel berichtet {\"u}ber die Erfahrungen aus zwei Semestern, in denen Studierende der Data-Warehousing-Vorlesung individuelle Einzelprojekte bearbeitet haben. Das Projekt besteht aus f{\"u}nf Challenges: die Vorstellung der Projektidee, ein Peer-Review anderer Ideen, Datenmodellierung, ETL und analytische Queries, sowie die Erstellung eines Power BI-Dashboards.}, language = {de} }