Stefan Hagedorn

dblp:127/0405 · DBLP profile ↗
← Back
9ranked-venue papers in the field
6as first author
4since 2021 · last 2023
0000-0002-0172-8162ORCID · verified

Domains — venue-derived; a paper can count in several

Database Systems & Data Management · 9 (6 first)
YearPublicationVenuePosition
2023 Exploration of Approaches for In-Database ML
Steffen Kläbe, Stefan Hagedorn, Kai-Uwe Sattler
EDBT2
2022 Accelerating Python UDFs in Vectorized Query Execution
Steffen Kläbe, Robert DeSantis, Stefan Hagedorn, Kai-Uwe Sattler
CIDR3
2021 Putting Pandas in a Box
Stefan Hagedorn, Steffen Kläbe, Kai-Uwe Sattler
CIDR1
2021 Conquering a Panda's weaker self - Fighting laziness with laziness
abstract
The Python programming language has become very popular among data scientists because of its easy-to-learn syntax and rich ecosystem of libraries. Especially the Pandas framework is widely used for various data processing and analytics tasks. However, due to its memory management and eager evaluation Pandas does not scale and workstations quickly come to their limits even for moderate data set sizes. With Grizzly, we introduce a framework that produces SQL queries for operations on DataFrames, moving complexity from workstations to database servers. Grizzly allows to not only access data already stored in a database, but also to combine it with external data from files. Furthermore, users can use their own user-defined functions or use Grizzly’s model join feature to easily apply machine learning models to data, both being executed inside the database server. This allows for fast and scalable data analytics operations, even with a small workstation.
Stefan Hagedorn, Steffen Kläbe, Kai-Uwe Sattler
EDBT1
2020 When sweet and cute isn't enough anymore: Solving scalability issues in Python Pandas with Grizzly
Stefan Hagedorn
CIDR1
2020 A gray-box modeling methodology for runtime prediction of Apache Spark jobs
abstract
Abstract Apache Spark jobs are often characterized by processing huge data sets and, therefore, require runtimes in the range of minutes to hours. Thus, being able to predict the runtime of such jobs would be useful not only to know when the job will finish, but also for scheduling purposes, to estimate monetary costs for cloud deployment, or to determine an appropriate cluster configuration, such as the number of nodes. However, predicting Spark job runtimes is much more challenging than for standard database queries: cluster configuration and parameters have a significant performance impact and jobs usually contain a lot of user-defined code making it difficult to estimate cardinalities and execution costs. In this paper, we present a gray-box modeling methodology for runtime prediction of Apache Spark jobs. Our approach comprises two steps: first, a white-box model for predicting the cardinalities of the input RDDs of each operator is built based on prior knowledge about the behavior and application parameters such as applied filters data, number of iterations, etc. In the second step, a black-box model for each task constructed by monitoring runtime metrics while varying allocated resources and input RDD cardinalities is used. We further show how to use this gray-box approach not only for predicting the runtime of a given job, but also as part of a decision model for reusing intermediate cached results of Spark jobs. Our methodology is validated with experimental evaluation showing a highly accurate prediction of the actual job runtime and a performance improvement if intermediate results can be reused.
Hani Al-Sayeh, Stefan Hagedorn, Kai-Uwe Sattler
Distributed Parallel Databases2
2018 Cost-Based Sharing and Recycling of (Intermediate) Results in Dataflow Programs
Stefan Hagedorn, Kai-Uwe Sattler
ADBIS1
2017 Big Spatial Data Processing Frameworks: Feature and Performance Evaluation
abstract
Nowadays, a vast amount of data is generated and collected every moment and often, this data has a spatial and/or temporal aspect. To analyze the massive data sets, big data platforms like Apache Hadoop MapReduce and Apache Spark emerged and extensions that take the spatial characteristics into account were created for them. In this paper, we analyze and compare existing solutions for spatial data processing on Hadoop and Spark. In our comparison, we investigate their features as well as their performances in a micro benchmark for spatial filter and join queries. Based on the results and our experiences with these frameworks, we outline the requirements for a general spatio-temporal benchmark for Big Spatial Data processing platforms and sketch first solutions to the identified problems.
Stefan Hagedorn, Philipp Götze, Kai-Uwe Sattler
EDBT1
2017 Efficient spatio-temporal event processing with STARK
abstract
For Big Data processing, Apache Spark has been widely accepted. However, when dealing with events or any other spatio-temporal data sets, Spark becomes very inefficient as it does not include any spatial or temporal data types and operators. In this paper we demonstrate our STARK project that adds the required data types and operators, such as spatio-temporal filter and join with various predicates to Spark. Additionally, it includes k nearest neighbor search and a density based clustering operator for data analysis tasks as well as spatial partitioning and indexing techniques for efficient processing. During the demo, programs can be created on real world event data sets using STARK's Scala API or our Pig Latin derivative Piglet in a web front end which also visualizes the results.
Stefan Hagedorn, Timo Räth
EDBT1