Harald Lang

dblp:150/9460 · DBLP profile ↗
← Back
13ranked-venue papers
5as first author
2since 2021 · last 2022
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Databases, data management, data science and information retrieval · 13 · 5 first-author · 2 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Databases, data mining, and information retrieval
5 papers
Indexing and storage engines · 53% Query processing and optimization · 25% Spatial and temporal data management · 15%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
Processor architecture and microarchitecture · 70% Performance modeling and evaluation · 30%

Topics — the 14 heaviest of 16, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Indexing and storage engines
bitmap index
0.412020
Tree-Encoded Bitmaps · SIGMOD Conference 2020
Indexing and storage engines › bitmap index
compressed bitmap index
0.412020
Tree-Encoded Bitmaps · SIGMOD Conference 2020
Query processing and optimization › query execution › hardware-accelerated query processing
SIMD query processing
0.412020
Make the most out of your SIMD investments: counter control flow divergence in compiled query pipelines · VLDB J. 2020
Indexing and storage engines › membership query
approximate membership query
0.412019
Performance-Optimal Filtering: Bloom overtakes Cuckoo at High-Throughput · Proc. VLDB Endow. 2019
Indexing and storage engines › membership query › approximate membership query
bloom filter
0.412019
Performance-Optimal Filtering: Bloom overtakes Cuckoo at High-Throughput · Proc. VLDB Endow. 2019
Indexing and storage engines › membership query › approximate membership query
cuckoo filter
0.412019
Performance-Optimal Filtering: Bloom overtakes Cuckoo at High-Throughput · Proc. VLDB Endow. 2019
Spatial and temporal data management › spatial indexing
quadtree
0.312018
Approximate Geospatial Joins with Precision Guarantees · ICDE 2018
Indexing and storage engines
spatial index
0.312018
Approximate Geospatial Joins with Precision Guarantees · ICDE 2018
Spatial and temporal data management › spatial query processing
spatial join
0.312018
Approximate Geospatial Joins with Precision Guarantees · ICDE 2018
Database system architecture and tuning
hybrid transactional and analytical processing
0.212016
Data Blocks: Hybrid OLTP and OLAP on Compressed Storage using both Vectorization and Compilation · SIGMOD Conference 2016
Query processing and optimization
query execution
0.212016
Data Blocks: Hybrid OLTP and OLAP on Compressed Storage using both Vectorization and Compilation · SIGMOD Conference 2016
Processor architecture and microarchitecture
instruction set architecture
0.112020
Make the most out of your SIMD investments: counter control flow divergence in compiled query pipelines · VLDB J. 2020
Processor architecture and microarchitecture
SIMD
0.112020
Make the most out of your SIMD investments: counter control flow divergence in compiled query pipelines · VLDB J. 2020
Performance modeling and evaluation
workload characterization
0.112019
Performance-Optimal Filtering: Bloom overtakes Cuckoo at High-Throughput · Proc. VLDB Endow. 2019

Methods — techniques the papers use, named apart from their topics

control flow divergence handling · 0.9AVX512 · 0.9register-blocked bloom filter · 0.8performance-optimal filter configuration · 0.8cache-sectorized bloom filter · 0.8tree-based encoding · 0.4random access · 0.4radix tree · 0.3precision guarantees · 0.3JIT compilation · 0.2
YearPublicationVenuePosition
2022 Recursive SQL and GPU-support for in-database machine learning
abstract
Abstract In machine learning, continuously retraining a model guarantees accurate predictions based on the latest data as training input. But to retrieve the latest data from a database, time-consuming extraction is necessary as database systems have rarely been used for operations such as matrix algebra and gradient descent. In this work, we demonstrate that SQL with recursive tables makes it possible to express a complete machine learning pipeline out of data preprocessing, model training and its validation. To facilitate the specification of loss functions, we extend the code-generating database system Umbra by an operator for automatic differentiation for use within recursive tables: With the loss function expressed in SQL as a lambda function, Umbra generates machine code for each partial derivative. We further use automatic differentiation for a dedicated gradient descent operator, which generates LLVM code to train a user-specified model on GPUs. We fine-tune GPU kernels at hardware level to allow a higher throughput and propose non-blocking synchronisation of multiple units. In our evaluation, automatic differentiation accelerated the runtime by the number of cached subexpressions compared to compiling each derivative separately. Our GPU kernels with independent models allowed maximal throughput even for small batch sizes, making machine learning pipelines within SQL more competitive.
Maximilian E. Schüle, Harald Lang, Maximilian Springer, Alfons Kemper, Thomas Neumann 0001, Stephan Günnemann
Distributed Parallel Databases2
2021 In-Database Machine Learning with SQL on GPUs
abstract
In machine learning, continuously retraining a model guarantees accurate predictions based on the latest data as training input. But to retrieve the latest data from a database, time-consuming extraction is necessary as database systems have rarely been used for operations such as matrix algebra and gradient descent.
Maximilian E. Schüle, Harald Lang, Maximilian Springer, Alfons Kemper, Thomas Neumann 0001, Stephan Günnemann
SSDBM2
2020 The Case for Hybrid Succinct Data Structures
Christoph Anneser, Andreas Kipf, Harald Lang, Thomas Neumann 0001, Alfons Kemper
EDBT3
2020 Adaptive Main-Memory Indexing for High-Performance Point-Polygon Joins
abstract
Connected mobility applications rely heavily on geospatial joins that associate point data, such as locations of Uber cars, to static polygonal regions, such as city neighborhoods. These joins typically involve expensive geometric computations, which makes it hard to provide an interactive user experience. In this paper, we propose an adaptive polygon index that leverages true hit fltering to avoid expensive geometric computations in most cases. In particular, our approach closely approximates polygons by combining quadtrees with true hit filtering, and stores these approximations in a query-effcient radix tree. Based on this index, we introduce two geospatial join algorithms: an approximate one that guarantees a user-defined precision, and an exact one that adapts to the expected point distribution. In summary, our technique outperforms existing CPU-based joins by up to two orders of magnitude and is competitive with state-of-the-art GPU implementations.
Andreas Kipf, Harald Lang, Varun Pandey, Raul Alexandru Persa, Christoph Anneser, Eleni Tzirita Zacharatou, Harish Doraiswamy, Peter Boncz, Thomas Neumann 0001, Alfons Kemper
EDBT2
2020 Tree-Encoded Bitmaps
abstract
We propose a novel method to represent compressed bitmaps. Similarly to existing bitmap compression schemes, we exploit the compression potential of bitmaps populated with consecutive identical bits, i.e., 0-runs and 1-runs. But in contrast to prior work, our approach employs a binary tree structure to represent runs of various lengths. Leaf nodes in the upper tree levels thereby represent longer runs, and vice versa. The tree-based representation results in high compression ratios and enables efficient random access, which in turn allows for the fast intersection of bitmaps. Our experimental analysis with randomly generated bitmaps shows that our approach significantly improves over state-of-the-art compression techniques when bitmaps are dense and/or only barely clustered. Further, we evaluate our approach with real-world data sets, showing that our tree-encoded bitmaps can save up to one third of the space over existing techniques.
Harald Lang, Alexander Beischl, Viktor Leis, Peter Boncz, Thomas Neumann 0001, Alfons Kemper
SIGMOD Conference1
2020 Make the most out of your SIMD investments: counter control flow divergence in compiled query pipelines
abstract
Increasing single instruction multiple data (SIMD) capabilities in modern hardware allows for the compilation of data-parallel query pipelines. This means GPU-alike challenges arise: control flow divergence causes the underutilization of vector-processing units. In this paper, we present efficient algorithms for the AVX-512 architecture to address this issue. These algorithms allow for the fine-grained assignment of new tuples to idle SIMD lanes. Furthermore, we present strategies for their integration with compiled query pipelines so that tuples are never evicted from registers. We evaluate our approach with three query types: (i) a table scan query based on TPC-H Query 1, that performs up to 34% faster when addressing underutilization, (ii) a hashjoin query, where we observe up to 25% higher performance, and (iii) an approximate geospatial join query, which shows performance improvements of up to 30%.
Harald Lang, Linnea Passing, Andreas Kipf, Peter Boncz, Thomas Neumann 0001, Alfons Kemper
VLDB J.1
2019 Fluid Co-processing: GPU Bloom-filters for CPU Joins
abstract
It has so far been unclear which data-intensive CPU tasks can be accelerated with GPUs, as GPUs are bottlenecked by the slow bus connection to the CPU and the limited size of GPU memories.
Tim Gubner, Diego G. Tomé, Harald Lang, Peter Boncz
DaMoN3
2019 The Power of SQL Lambda Functions
abstract
This work demonstrates a wide range of applications that use lambda expressions in SQL. Such injected code snippets form a useful technique required by data mining algorithms to overcome the inflexibility of the SQL language, as the language is limited to predefined aggregations only. Following the ’move computation to the data’ paradigm, we extend SQL lambda functions - also known from common programming languages - for machine- learning tasks.\n\nAs machine-learning relies mostly on gradient descent and tensor data types, we use lambda expressions for clustering and graph-mining algorithms as well as to formulate loss functions and label data. To underline the flexibility gained in SQL, this work demonstrates a main memory database system with integrated lambda expressions accessible through table functions in SQL. By reusing SQL and performing data mining and machine- learning tasks faster than can dedicated tools, this demonstration aims at convincing data scientists of the capabilities of database systems for computational tasks.
Maximilian E. Schüle, Dimitri Vorona, Linnea Passing, Harald Lang, Alfons Kemper, Stephan Günnemann, Thomas Neumann 0001
EDBT4
2019 Performance-Optimal Filtering: Bloom overtakes Cuckoo at High-Throughput
abstract
We define the concept of performance-optimal filtering to indicate the Bloom or Cuckoo filter configuration that best accelerates a particular task. While the space-precision tradeoff of these filters has been well studied, we show how to pick a filter that maximizes the performance for a given workload. This choice might be "suboptimal" relative to traditional space-precision metrics, but it will lead to better performance in practice. In this paper, we focus on high-throughput filter use cases, aimed at avoiding CPU work, e.g., a cache miss, a network message, or a local disk I/O - events that can happen at rates of millions to hundreds per second. Besides the false-positive rate and memory footprint of the filter, performance optimality has to take into account the absolute cost of the filter lookup as well as the saved work per lookup that filtering avoids; while the actual rate of negative lookups in the workload determines whether using a filter improves overall performance at all. In the course of the paper, we introduce new filter variants, namely the register-blocked and cache-sectorized Bloom filters. We present new implementation techniques and perform an extensive evaluation on modern hardware platforms, including the wide-SIMD Skylake-X and Knights Landing. This experimentation shows that in high-throughput situations, the lower lookup cost of blocked Bloom filters allows them to overtake Cuckoo filters.
Harald Lang, Thomas Neumann 0001, Alfons Kemper, Peter Boncz
Proc. VLDB Endow.1
2018 Make the most out of your SIMD investments: counter control flow divergence in compiled query pipelines
abstract
Increasing single instruction multiple data (SIMD) capabilities in modern hardware allows for compiling efficient data-parallel query pipelines. This means GPU-alike challenges arise: control flow divergence causes underutilization of vector-processing units. In this paper, we present efficient algorithms for the AVX-512 architecture to address this issue. These algorithms allow for fine-grained assignment of new tuples to idle SIMD lanes. Furthermore, we present strategies for their integration with compiled query pipelines without introducing inefficient memory materializations. We evaluate our approach with a high-performance geospatial join query, which shows performance improvements of up to 35%.
Harald Lang, Andreas Kipf, Linnea Passing, Peter Boncz, Thomas Neumann 0001, Alfons Kemper
DaMoN1
2018 Approximate Geospatial Joins with Precision Guarantees
abstract
Geospatial joins are a core building block of connected mobility applications. An especially challenging problem are joins between streaming points and static polygons. Since points are not known beforehand, they cannot be indexed. Nevertheless, points need to be mapped to polygons with low latencies to enable real-time feedback. We present an approximate geospatial join that guarantees a user-defined precision. Our technique uses a quadtree-based hierarchical grid to approximate polygons and stores these approximations in a specialized radix tree. Our approach can perform up to several orders of magnitude faster than existing techniques while providing sufficiently precise results for many applications.
Andreas Kipf, Harald Lang, Varun Pandey, Raul Alexandru Persa, Peter Boncz, Thomas Neumann 0001, Alfons Kemper
ICDE2
2017 SQL- and Operator-centric Data Analytics in Relational Main-Memory Databases
Linnea Passing, Manuel Then, Nina C. Hubig, Harald Lang, Michael Schreier, Stephan Günnemann, Alfons Kemper, Thomas Neumann 0001
EDBT4
2016 Data Blocks: Hybrid OLTP and OLAP on Compressed Storage using both Vectorization and Compilation
abstract
This work aims at reducing the main-memory footprint in high performance hybrid OLTP & OLAP databases, while retaining high query performance and transactional throughput. For this purpose, an innovative compressed columnar storage format for cold data, called Data Blocks is introduced. Data Blocks further incorporate a new light-weight index structure called Positional SMA that narrows scan ranges within Data Blocks even if the entire block cannot be ruled out. To achieve highest OLTP performance, the compression schemes of Data Blocks are very light-weight, such that OLTP transactions can still quickly access individual tuples. This sets our storage scheme apart from those used in specialized analytical databases where data must usually be bit-unpacked. Up to now, high-performance analytical systems use either vectorized query execution or just-in-time (JIT) query compilation. The fine-grained adaptivity of Data Blocks necessitates the integration of the best features of each approach by an interpreted vectorized scan subsystem feeding into JIT-compiled query pipelines. Experimental evaluation of HyPer, our full-fledged hybrid OLTP & OLAP database system, shows that Data Blocks accelerate performance on a variety of query workloads while retaining high transaction throughput.
Harald Lang, Tobias Mühlbauer, Florian Funke 0001, Peter Boncz, Thomas Neumann 0001, Alfons Kemper
SIGMOD Conference1