Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Stefan Richter 0007

dblp:01/322-7 · DBLP profile ↗
← Back
7ranked-venue papers
3as first author
0since 2021 · last 2017
—ORCID · conflict

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

Databases, data management, data science and information retrieval · 7 · 3 first-author

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
6 papers
Indexing and storage engines · 61% Data stream processing · 13% Query processing and optimization · 10%
Computer architecture, parallel and distributed computing, and storage systems
4 papers
Distributed systems · 51% Cloud and datacenter computing · 31% Storage systems · 13%

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

TopicWeightPapersLastEvidence papers
Indexing and storage engines
hash index
0.422015
A Seven-Dimensional Analysis of Hashing Methods and its Implications on Query Processing · Proc. VLDB Endow. 2015
A comparison of adaptive radix trees and hash tables · ICDE 2015
Distributed systems › distributed algorithms › distributed snapshot
consistent snapshots
0.312017
State Management in Apache Flink®: Consistent Stateful Distributed Stream Processing · Proc. VLDB Endow. 2017
Distributed systems
fault tolerance
0.312017
State Management in Apache Flink®: Consistent Stateful Distributed Stream Processing · Proc. VLDB Endow. 2017
Indexing and storage engines › hash index
cuckoo hashing
0.212015
A comparison of adaptive radix trees and hash tables · ICDE 2015
Query processing and optimization › query execution
hash-based query processing
0.212015
A Seven-Dimensional Analysis of Hashing Methods and its Implications on Query Processing · Proc. VLDB Endow. 2015
Indexing and storage engines
in-memory index
0.212015
A comparison of adaptive radix trees and hash tables · ICDE 2015
Cloud and datacenter computing › cluster computing framework
hadoop
0.222013
Mosquito: Another One Bites the Data Upload STream · Proc. VLDB Endow. 2013
Only Aggressive Elephants are Fast Elephants · Proc. VLDB Endow. 2012
Indexing and storage engines
adaptive indexing
0.212014
Towards zero-overhead static and adaptive indexing in Hadoop · VLDB J. 2014
Distributed and cloud data management › big data systems
hadoop
0.212014
Towards zero-overhead static and adaptive indexing in Hadoop · VLDB J. 2014
Indexing and storage engines
index construction
0.212013
Mosquito: Another One Bites the Data Upload STream · Proc. VLDB Endow. 2013
Database system architecture and tuning › database design
physical database design
0.212013
Mosquito: Another One Bites the Data Upload STream · Proc. VLDB Endow. 2013
Storage systems › file systems
distributed file system
0.112012
Only Aggressive Elephants are Fast Elephants · Proc. VLDB Endow. 2012
Cloud and datacenter computing › cluster computing framework
mapreduce optimization
0.112012
Only Aggressive Elephants are Fast Elephants · Proc. VLDB Endow. 2012
Performance modeling and evaluation
benchmarking
0.112015
A comparison of adaptive radix trees and hash tables · ICDE 2015

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

pipelined in-flight snapshot · 0.6coarse grained rollback recovery · 0.6adaptive indexing · 0.5experimental comparison · 0.4upload pipeline modification · 0.3clustered indexes on block replicas · 0.3SIMD · 0.2static indexing · 0.2
YearPublicationVenuePosition
2017 State Management in Apache Flink®: Consistent Stateful Distributed Stream Processing
abstract
Stream processors are emerging in industry as an apparatus that drives analytical but also mission critical services handling the core of persistent application logic. Thus, apart from scalability and low-latency, a rising system need is first-class support for application state together with strong consistency guarantees, and adaptivity to cluster reconfigurations, software patches and partial failures. Although prior systems research has addressed some of these specific problems, the practical challenge lies on how such guarantees can be materialized in a transparent, non-intrusive manner that relieves the user from unnecessary constraints. Such needs served as the main design principles of state management in Apache Flink, an open source, scalable stream processor. We present Flink's core pipelined, in-flight mechanism which guarantees the creation of lightweight, consistent, distributed snapshots of application state, progressively, without impacting continuous execution. Consistent snapshots cover all needs for system reconfiguration, fault tolerance and version management through coarse grained rollback recovery. Application state is declared explicitly to the system, allowing efficient partitioning and transparent commits to persistent storage. We further present Flink's backend implementations and mechanisms for high availability, external state queries and output commit. Finally, we demonstrate how these mechanisms behave in practice with metrics and large-deployment insights exhibiting the low performance trade-offs of our approach and the general benefits of exploiting asynchrony in continuous, yet sustainable system deployments.
Paris Carbone, Stephan Ewen, Gyula Fóra, Seif Haridi, Stefan Richter 0007, Kostas Tzoumas
Proc. VLDB Endow.5
2015 A comparison of adaptive radix trees and hash tables
abstract
With prices of main memory constantly decreasing, people nowadays are more interested in performing their computations in main memory, and leave high I/O costs of traditional disk-based systems out of the equation. This change of paradigm, however, represents new challenges to the way data should be stored and indexed in main memory in order to be processed efficiently. Traditional data structures, like the venerable B-tree, were designed to work on disk-based systems, but they are no longer the way to go in main-memory systems, at least not in their original form, due to the poor cache utilization of the systems they run on. Because of this, in particular, during the last decade there has been a considerable amount of research on index data structures for main-memory systems. Among the most recent and most interesting data structures for main-memory systems there is the recently-proposed adaptive radix tree ARTful (ART for short). The authors of ART presented experiments that indicate that ART was clearly a better choice over other recent tree-based data structures like FAST and B+-trees. However, ART was not the first adaptive radix tree. To the best of our knowledge, the first was the Judy Array (Judy for short), and a comparison between ART and Judy was not shown. Moreover, the same set of experiments indicated that only a hash table was competitive to ART. The hash table used by the authors of ART in their study was a chained hash table, but this kind of hash tables can be suboptimal in terms of space and performance due to their potentially high use of pointers. In this paper we present a thorough experimental comparison between ART, Judy, two variants of hashing via quadratic probing, and three variants of Cuckoo hashing. These hashing schemes are known to be very efficient. For our study we consider whether the data structures are to be used as a non-covering index (relying on an additional store), or as a covering index (covering key-value pairs). We consider both OLAP and OLTP scenarios. Our experiments strongly indicate that neither ART nor Judy are competitive to the aforementioned hashing schemes in terms of performance, and, in the case of ART, sometimes not even in terms of space.
Victor Alvarez 0001, Stefan Richter 0007, Jens Dittrich
ICDE2
2015 A Seven-Dimensional Analysis of Hashing Methods and its Implications on Query Processing
abstract
Hashing is a solved problem. It allows us to get constant time access for lookups. Hashing is also simple. It is safe to use an arbitrary method as a black box and expect good performance, and optimizations to hashing can only improve it by a negligible delta. Why are all of the previous statements plain wrong? That is what this paper is about. In this paper we thoroughly study hashing for integer keys and carefully analyze the most common hashing methods in a five-dimensional requirements space: (1) data-distribution, (2) load factor, (3) dataset size, (4) read/write-ratio, and (5) un/successful-ratio. Each point in that design space may potentially suggest a different hashing scheme, and additionally also a different hash function. We show that a right or wrong decision in picking the right hashing scheme and hash function combination may lead to significant difference in performance. To substantiate this claim, we carefully analyze two additional dimensions: (6) five representative hashing schemes (which includes an improved variant of Robin Hood hashing), (7) four important classes of hash functions widely used today. That is, we consider 20 different combinations in total. Finally, we also provide a glimpse about the effect of table memory layout and the use of SIMD instructions. Our study clearly indicates that picking the right combination may have considerable impact on insert and lookup performance, as well as memory footprint. A major conclusion of our work is that hashing should be considered a white box before blindly using it in applications, such as query processing. Finally, we also provide a strong guideline about when to use which hashing method.
Stefan Richter 0007, Victor Alvarez 0001, Jens Dittrich
Proc. VLDB Endow.1
2014 Main memory adaptive indexing for multi-core systems
abstract
Adaptive indexing is a concept that considers index creation in databases as a by-product of query processing; as opposed to traditional full index creation where the indexing effort is performed up front before answering any queries. Adaptive indexing has received a considerable amount of attention, and several algorithms have been proposed over the past few years; including a recent experimental study comparing a large number of existing methods. Until now, however, most adaptive indexing algorithms have been designed single-threaded, yet with multi-core systems already well established, the idea of designing parallel algorithms for adaptive indexing is very natural. In this regard, and to the best of our knowledge, only one parallel algorithm for adaptive indexing has recently appeared in the literature: The parallel version of standard cracking. In this paper we describe three alternative parallel algorithms for adaptive indexing, including a second variant of a parallel standard cracking algorithm. Additionally, we describe a hybrid parallel sorting algorithm, and a NUMA-aware method based on sorting. We then thoroughly compare all these algorithms experimentally. Parallel sorting algorithms serve as a realistic baseline for multi-threaded adaptive indexing techniques. In total we experimentally compare seven parallel algorithms. The initial set of experiments considered in this paper indicates that our parallel algorithms significantly improve over previously known ones. Our results also suggest that, although adaptive indexing algorithms are a good design choice in single-threaded environments, the rules change considerably in the parallel case. That is, in future highly-parallel environments, sorting algorithms could be serious alternatives to adaptive indexing.
Victor Alvarez 0001, Felix Martin Schuhknecht, Jens Dittrich, Stefan Richter 0007
DaMoN4
2014 Towards zero-overhead static and adaptive indexing in Hadoop
Stefan Richter 0007, Jorge-Arnulfo Quiané-Ruiz, Stefan Schuh, Jens Dittrich
VLDB J.1
2013 Mosquito: Another One Bites the Data Upload STream
abstract
Mosquito is a lightweight and adaptive physical design framework for Hadoop. Mosquito connects to existing data pipelines in Hadoop MapReduce and/or HDFS, observes the data, and creates better physical designs, i.e. indexes, as a byproduct. Our approach is minimally invasive, yet it allows users and developers to easily improve the runtime of Hadoop. We present three important use cases: first, how to create indexes as a byproduct of data uploads into HDFS; second, how to create indexes as a byproduct of map tasks; and third, how to execute map tasks as a byproduct of HDFS data uploads. These use cases may even be combined.
Stefan Richter 0007, Jens Dittrich, Stefan Schuh, Tobias Frey
Proc. VLDB Endow.1
2012 Only Aggressive Elephants are Fast Elephants
abstract
Yellow elephants are slow. A major reason is that they consume their inputs entirely before responding to an elephant rider's orders. Some clever riders have trained their yellow elephants to only consume parts of the inputs before responding. However, the teaching time to make an elephant do that is high. So high that the teaching lessons often do not pay off. We take a different approach. We make elephants aggressive; only this will make them very fast. We propose HAIL (Hadoop Aggressive Indexing Library), an enhancement of HDFS and Hadoop MapReduce that dramatically improves runtimes of several classes of MapReduce jobs. HAIL changes the upload pipeline of HDFS in order to create different clustered indexes on each data block replica. An interesting feature of HAIL is that we typically create a win-win situation: we improve both data upload to HDFS and the runtime of the actual Hadoop MapReduce job. In terms of data upload, HAIL improves over HDFS by up to 60% with the default replication factor of three. In terms of query execution, we demonstrate that HAIL runs up to 68x faster than Hadoop. In our experiments, we use six clusters including physical and EC2 clusters of up to 100 nodes. A series of scalability experiments also demonstrates the superiority of HAIL.
Jens Dittrich, Jorge-Arnulfo Quiané-Ruiz, Stefan Richter 0007, Stefan Schuh, Alekh Jindal, Jörg Schad
Proc. VLDB Endow.3