Logo des Repositoriums
 

Lock-free Data Structures for Data Stream Processing

dc.contributor.authorBaumstark, Alexander
dc.contributor.authorPohl, Constantin
dc.date.accessioned2021-05-04T09:35:34Z
dc.date.available2021-05-04T09:35:34Z
dc.date.issued2019
dc.description.abstractProcessing data in real-time instead of storing and reading from tables has led to a specialization of DBMS into the so-called data stream processing paradigm. While high throughput and low latency are key requirements to keep up with varying stream behavior and to allow fast reaction to incoming events, there are many possibilities how to achieve them. In combination with modern hardware, like server CPUs with tens of cores, the parallelization of stream queries for multithreading and vectorization is a common schema. High degrees of parallelism, however, need efficient synchronization mechanisms to allow good scaling with threads for shared memory access.In this work, we identify the most time-consuming operations for stream processing exemplarily for our own stream processing engine PipeFabric. In addition, we present different design principles of lock-free data structures which are suited to overcome those bottlenecks. We will finally demonstrate how lock-freedom greatly improves performance for join processing and tuple exchange between operators under different workloads. Nevertheless, the efficient usage of lock-free data structures comes with additional efforts and pitfalls, which we also discuss in this paper.de
dc.identifier.doi10.1007/s13222-019-00329-4
dc.identifier.pissn1610-1995
dc.identifier.urihttp://dx.doi.org/10.1007/s13222-019-00329-4
dc.identifier.urihttps://dl.gi.de/handle/20.500.12116/36378
dc.publisherSpringer
dc.relation.ispartofDatenbank-Spektrum: Vol. 19, No. 3
dc.relation.ispartofseriesDatenbank-Spektrum
dc.subjectConcurrent Data Structures
dc.subjectLock-free
dc.subjectParallelism
dc.subjectStream Processing
dc.titleLock-free Data Structures for Data Stream Processingde
dc.typeText/Journal Article
gi.citation.endPage218
gi.citation.startPage209

Dateien