10 research outputs found

    Verbundoperationen über Datenströmen und deren Optimierung unter Verwendung dynamischer Metadaten

    Get PDF
    Technischer Fortschritt und Vernetzung haben zu einem enormen Zuwachs an kontinuierlich anfallenden Datenströmen geführt, aus denen immer schneller wertvolle Informationen abgeleitet werden sollen. Zur Verarbeitung von kontinuierlichen Anfragen über Datenströme etablieren sich daher Datenstrommanagementsysteme, die hauptsächlich im Hauptspeicher operieren und im Gegensatz zu Datenbanksystemen auf die Verarbeitung kontinuierlicher Anfragen über Datenströmen zugeschnitten sind. Bei der Implementierung dieser neuen Systeme hat sich die Übernahme des Konzeptes der relationalen Operatorgraphen aus der Welt der Datenbanken bewährt, wobei diese allerdings statt bedarfsgesteuert nun kontinuierlich und datengetrieben ausgewertet werden. Durch Zuweisen von Gültigkeitsintervallen zu den Datenstromelementen kann dabei das Problem gelöst werden, mit endlichen Ressourcen potentiell unbegrenzte Datenströme zu verarbeiten. Die Mächtigkeit solcher Systeme hängt wesentlich von der Verfügbarkeit effizienter wohldefinierter Techniken zur Verknüpfung von Informationen aus verschiedenen Datenströmen ab. Ziel dieser Arbeit ist es daher, das für Datenbanken bewährte Konzept des relationalen Verbundes auf die datengetriebene Datenstromverarbeitung mit Gültigkeitsintervallen zu übertragen. Dazu wird die Semantik der Verbundoperation für Datenströme mittels der Schnappschuss-Reduzierung formal auf die des Verbundes in der erweiterten relationalen Algebra zurückgeführt. Es werden mehrere Verbundalgorithmen vorgestellt und gezeigt, dass diese die gewünschte Semantik haben. Durch eine konsequente Parametrisierung der Verfahren bezüglich der Datenstrukturen zur Statusverwaltung werden verschiedenste Typen von Verbundprädikaten effizient unterstützt. Bewährte Techniken der Verbundberechnung mittels verschachtelter Schleifen, Hashing und Indexierung werden dabei für die Datenstromverarbeitung adaptiert. Mit dem temporalen Progressive-Merge-Join wird zudem ein Verfahren vorgestellt, dass den Verbund über Datenströmen mittels einer wertbasierten Sortierung berechnet. Zudem werden für die Verfahren verschiedenste Optimierungen vorgeschlagen, darunter für alle Verfahren die Verallgemeinerung auf mehr als zwei Datenströme. Zur Ermöglichung der automatischen Auswahl und Parametrisierung der Implementierungen anhand ihres prognostizierten Ressourcenverbrauchs werden diese in ein detailliertes Kostenmodell eingebettet. Da bestimmte Metadaten bezüglich der zu verarbeitenden Datenströmen bei der Registrierung kontinuierlicher Anfragen oftmals nicht vorliegen und sich zudem während der langen Laufzeit der Anfragen ändern können, ist es wichtig, jederzeit detaillierte Informationen bezüglich der Datenströme und des Systemverhaltens erheben und gegebenenfalls durch Anpassungen an der Verarbeitungsstrategie darauf reagieren können. Ein wesentlicher Teil der Arbeit ist daher der Fragestellung gewidmet, wie in einem Datenstrommanagementsystem dynamische Metadaten erhoben werden können. Dazu wird ein benutzerfreundliches Rahmenwerk vorgestellt, das es ermöglicht, dynamische Metadaten konsistent und effizient zu erheben. In Experimenten wird die dynamische Metadatenerhebung untersucht und auch für die Evaluation der vorgestellten Verbundoperationen eingesetzt. Zudem wird eine Technik vorgestellt, mit der kontinuierliche Anfragen zur Laufzeit restrukturiert werden können, und deren Anwendbarkeit für die Verbundoptimierung aufgezeigt

    Verbundoperationen über Datenströmen und deren Optimierung unter Verwendung dynamischer Metadaten

    No full text
    Technischer Fortschritt und Vernetzung haben zu einem enormen Zuwachs an kontinuierlich anfallenden Datenströmen geführt, aus denen immer schneller wertvolle Informationen abgeleitet werden sollen. Zur Verarbeitung von kontinuierlichen Anfragen über Datenströme etablieren sich daher Datenstrommanagementsysteme, die hauptsächlich im Hauptspeicher operieren und im Gegensatz zu Datenbanksystemen auf die Verarbeitung kontinuierlicher Anfragen über Datenströmen zugeschnitten sind. Bei der Implementierung dieser neuen Systeme hat sich die Übernahme des Konzeptes der relationalen Operatorgraphen aus der Welt der Datenbanken bewährt, wobei diese allerdings statt bedarfsgesteuert nun kontinuierlich und datengetrieben ausgewertet werden. Durch Zuweisen von Gültigkeitsintervallen zu den Datenstromelementen kann dabei das Problem gelöst werden, mit endlichen Ressourcen potentiell unbegrenzte Datenströme zu verarbeiten. Die Mächtigkeit solcher Systeme hängt wesentlich von der Verfügbarkeit effizienter wohldefinierter Techniken zur Verknüpfung von Informationen aus verschiedenen Datenströmen ab. Ziel dieser Arbeit ist es daher, das für Datenbanken bewährte Konzept des relationalen Verbundes auf die datengetriebene Datenstromverarbeitung mit Gültigkeitsintervallen zu übertragen. Dazu wird die Semantik der Verbundoperation für Datenströme mittels der Schnappschuss-Reduzierung formal auf die des Verbundes in der erweiterten relationalen Algebra zurückgeführt. Es werden mehrere Verbundalgorithmen vorgestellt und gezeigt, dass diese die gewünschte Semantik haben. Durch eine konsequente Parametrisierung der Verfahren bezüglich der Datenstrukturen zur Statusverwaltung werden verschiedenste Typen von Verbundprädikaten effizient unterstützt. Bewährte Techniken der Verbundberechnung mittels verschachtelter Schleifen, Hashing und Indexierung werden dabei für die Datenstromverarbeitung adaptiert. Mit dem temporalen Progressive-Merge-Join wird zudem ein Verfahren vorgestellt, dass den Verbund über Datenströmen mittels einer wertbasierten Sortierung berechnet. Zudem werden für die Verfahren verschiedenste Optimierungen vorgeschlagen, darunter für alle Verfahren die Verallgemeinerung auf mehr als zwei Datenströme. Zur Ermöglichung der automatischen Auswahl und Parametrisierung der Implementierungen anhand ihres prognostizierten Ressourcenverbrauchs werden diese in ein detailliertes Kostenmodell eingebettet. Da bestimmte Metadaten bezüglich der zu verarbeitenden Datenströmen bei der Registrierung kontinuierlicher Anfragen oftmals nicht vorliegen und sich zudem während der langen Laufzeit der Anfragen ändern können, ist es wichtig, jederzeit detaillierte Informationen bezüglich der Datenströme und des Systemverhaltens erheben und gegebenenfalls durch Anpassungen an der Verarbeitungsstrategie darauf reagieren können. Ein wesentlicher Teil der Arbeit ist daher der Fragestellung gewidmet, wie in einem Datenstrommanagementsystem dynamische Metadaten erhoben werden können. Dazu wird ein benutzerfreundliches Rahmenwerk vorgestellt, das es ermöglicht, dynamische Metadaten konsistent und effizient zu erheben. In Experimenten wird die dynamische Metadatenerhebung untersucht und auch für die Evaluation der vorgestellten Verbundoperationen eingesetzt. Zudem wird eine Technik vorgestellt, mit der kontinuierliche Anfragen zur Laufzeit restrukturiert werden können, und deren Anwendbarkeit für die Verbundoptimierung aufgezeigt

    An approach to adaptive memory management in data stream systems

    No full text
    Adaptivity is a challenging open issue in data stream management. In this paper, we tackle the problem of memory adaptivity inside a system executing temporal sliding window queries over continuous data streams. Two different techniques to control the memory usage at runtime are proposed which refer to changes in window sizes and time granularities. Both techniques differ from standard load shedding approaches based on sampling as they ensure precise query answers for user-defined Quality of Service (QoS) specifications, even under query re-optimization

    S.Vaupel. An approach to adaptive memory management in data stream systems

    No full text
    Adaptivity is for sure one of the most challenging open issues in data stream management. This paper proposes two different techniques to dynamically control the memory usage at runtime inside a system executing temporal sliding window queries over continuous data streams. These novel techniques differ from standard load shedding approaches based on sampling as our techniques ensure precise query answers for given user-defined Quality of Service specifications, even under query re-optimization. We do not only discuss the impact of each technique on the various operations within a query plan but also introduce a sound cost model that allows to estimate their effects on memory usage. Based on these insights, this paper outlines the design of an adaptive memory manager component for data stream systems and demonstrates the feasibility of the proposed techniques by a thorough experimental study.

    A Status Report on XXL - a Software Infrastructure for Efficient Query Processing

    No full text
    XXL is a Java library that contains a rich infrastructure for implementing advanced query processing functionality. The library offers low-level components like access to raw disks as well as high-level ones like a query optimizer. On the intermediate levels, XXL provides a demand-driven cursor algebra, a framework for indexing and a powerful package for supporting aggregation. The library is publicly available under GNU LGPL and comes with a full documentation.

    Dynamic plan migration for snapshot-equivalent continuous queries in data stream systems

    No full text
    A data stream management system executes a large number of continuous queries in parallel. As stream characteristics and query workload change over time, the plan initially installed for a continuous query may become inefficient. As a consequence, the query optimizer will re-optimize this plan based on the current statistics. The replacement of the running plan with a more efficient but semantically equivalent plan at runtime is called dynamic plan migration. In order to have a sound semantic foundation for query optimization, we investigate dynamic plan migration for snapshot-equivalent plans. We develop a general method for dynamic plan migration that treats the old and new plan as snapshotequivalent black boxes. This enables the query optimizer to apply the conventional transformation rules during re-optimization. As a consequence, our approach supports the dynamic optimization of arbitrary continuous queries expressible in CQL, whereas existing solutions are limited in their scope

    Flexible multi-threaded scheduling for continuous queries over data streams

    No full text
    A variety of real-world applications share the property that data arrives in form of transient streams. Data stream management systems (DSMS) provide convenient solutions to the problem of processing continuous queries on those streams. Within a DSMS, the scheduling of the queries and their operators has proved to be of utmost importance. Previous approaches addressing this issue can be divided into two categories: either each operator runs in its own thread or all operators, combined in one query graph, run in a single thread. Both approaches suffer from severe drawbacks concerning the thread overhead on the one hand and the stalls due to expensive operators on the other hand. To overcome these drawbacks, we propose in this work a hybrid approach that flexibly assigns threads to subgraphs of the query graph. We complement this approach with a suitable strategy to determine these subgraphs. The results of an experimental study substantiate the feasibility of our approach and its superiority to previous approaches.
    corecore