Office Hours

For reliable meetings, please arrange an appointment via mail.
Otherwise, you can try to drop by at my office.

Dominik Meißner

Dominik Meißner has received a Master diploma cum laude in Computer Science from Ulm University in 2017. They then joined the Institute of Distributed Systems and are currently employed as a research assistant.

Research Interests

  • Distributed Computing
    • Event processing
    • Distribution and parallelization aspects
    • Time & programming models
  • Distributed systems & architectures
    • Event-driven architectures
    • Event sourcing & CQRS
    • Retroaction in event-sourced systems
    • Scalability of architectures
    • Concurrency and parallelism
  • Other Topics
    • Web technologies & web architectures
    • Programming languages and concepts
    • Open data & open educational ressources

Publications


2018

Erb, Benjamin; Meißner, Dominik; Steer, Benjamin A.; Margan, Domagoj; Kargl, Frank; Cuadrado, Felix; Pietzuch, Peter
GraphTides: A Framework for Evaluating Stream-based Graph Processing Platforms
Proceedings of the 1st Joint International Workshop on Graph Data Management Experiences & Systems (GRADES) and Network Data Analytics (NDA)
Juni 2018
akzeptiert

Zusammenfassung: Stream-based graph systems continuously ingest graph-changing events via an established input stream, performing the required computation on the corresponding graph. While there are various benchmarking and evaluation approaches for traditional, batch-oriented graph processing systems, there are no common procedures for evaluating stream-based graph systems. We, therefore, present GraphTides, a generic framework which includes the definition of an appropriate system model, an exploration of the parameter space, suitable workloads, and computations required for evaluating such systems. Furthermore, we propose a methodology and provide an architecture for running experimental evaluations. With our framework, we hope to systematically support system development, performance measurements, engineering, and comparisons of stream-based graph systems.

Meißner, Dominik; Erb, Benjamin; Kargl, Frank; Tichy, Matthias
retro-λ: An Event-sourced Platform for Serverless Applications with Retroactive Computing Support
Proceedings of the 12th ACM International Conference on Distributed Event-Based Systems
Juni 2018
akzeptiert

Zusammenfassung: State changes over time are inherent characteristics of stateful applications. So far, there are almost no attempts to make the past application history programmatically accessible or even modifiable. This is primarily due to the complexity of temporal changes and a difficult alignment with prevalent programming primitives and persistence strategies. Retroactive computing enables powerful capabilities though, including computations and predictions of alternate application timelines, post-hoc bug fixes, or retroactive state explorations. We propose an event-driven programming model that is oriented towards serverless computing and applies retroaction to the event sourcing paradigm. Our model is deliberately restrictive, but therefore keeps the complexity of retroactive operations in check. We then introduce retro-λ, a runtime platform that implements the model and provides retroactive capabilites to its applications. While retro-λ only shows negligible performance overheads compared to similar solutions for running regular applications, it enables its users to execute retroactive computations on the application histories as part of its programming model.

Meißner, Dominik; Erb, Benjamin; Kargl, Frank
Poster: Performance Engineering in Distributed Event-sourced Systems
Proceedings of the 12th ACM International Conference on Distributed Event-Based Systems
Juni 2018
akzeptiert

Zusammenfassung: Distributed event-sourced systems adopt a fairly new architectural style for data-intensive applications that maintains the full history of the application state. However, the performance implications of such systems are not yet well explored, let alone how the performance of these systems can be improved. A central issue is the lack of systematic performance engineering approaches that take into account the specific characteristics of these systems. To address this problem, we suggest a methodology for performance engineering and performance analysis of distributed event-sourced systems based on specific measurements and subsequent, targeted optimizations. The methodology blends in well into existing software engineering processes and helps developers to identify bottlenecks and to resolve performance issues. Using our structured approach, we improved an existing event-sourced system prototype and increased its performance considerably.

Erb, Benjamin; Meißner, Dominik; Ogger, Ferdinand; Kargl, Frank
Poster: Log Pruning in Distributed Event-sourced Systems
Proceedings of the 12th ACM International Conference on Distributed Event-Based Systems
Juni 2018
akzeptiert

Zusammenfassung: Event sourcing is increasingly used and implemented in event-based systems for maintaining the evolution of application state. However, unbounded event logs are impracticable for many systems, as it is difficult to align scalability requirements and long-term runtime behavior with the corresponding storage requirements. To this end, we explore the design space of log pruning approaches suitable for event-sourced systems. Furthermore, we survey specific log pruning mechanisms for event-sourced logs. In a brief evaluation, we point out the trade-offs when applying pruning to event logs and highlight the applicability of log pruning to event-sourced systems.

Meißner, Dominik
Doctoral Symposium: Towards Time Travel in Distributed Event-sourced Systems
Proceedings of the 12th ACM International Conference on Distributed Event-Based Systems
Juni 2018
akzeptiert

Zusammenfassung: Stateful applications are based on the state they hold and how it changes over time. This history of state changes is usually discarded as the application progresses. By building on concepts from event processing and storing the application history, we envision a novel programming paradigm that supports retroaction. Retroactive computing introduces new opportunities for a developer to access and even modify an application timeline. By enabling the exploration of alternative scenarios, retroactive computing establishes powerful new ways to debug systems and introduces new approaches to solve problems. Initial work has shown the practicality and possibilities of this new programming paradigm and introduces further research questions and challenges.

2017

Erb, Benjamin; Meißner, Dominik; Pietron, Jakob; Kargl, Frank
Chronograph – A Distributed Processing Platform for Online and Batch Computations on Event-sourced Graphs
Proceedings of the 11th ACM International Conference on Distributed Event-Based Systems
Juni 2017

Zusammenfassung: Several data-intensive applications take streams of events as a continuous input and internally map events onto a dynamic, graph-based data model which is then used for processing. The differences between event processing, graph computing, as well as batch processing and near-realtime processing yield a number of specific requirements for computing platforms that try to unify theses approaches. By combining an altered actor model, an event-sourced persistence layer, and a vertex-based, asynchronous programming model, we propose a distributed computing platform that supports event-driven, graph-based applications in a single platform. Our Chronograph platform concept enables online and offline computations on event-driven, history-aware graphs and supports different processing models on the evolving graph.

Erb, Benjamin; Meißner, Dominik; Habiger, Gerhard; Pietron, Jakob; Kargl, Frank
Consistent Retrospective Snapshots in Distributed Event-sourced Systems
Proceedings of the International Conference on Networked Systems 2017
März 2017

Zusammenfassung: An increasing number of distributed, event-based systems adopt an architectural style called event sourcing, in which entities keep their entire history in an event log. Event sourcing enables data lineage and allows entities to rebuild any previous state. Restoring previous application states is a straightforward task in event-sourced systems with a global and totally ordered event log. However, the extraction of causally consistent snapshots from distributed, individual event logs is rendered non-trivial due to causal relationships between communicating entities. High dynamicity of entities increases the complexity of such reconstructions even more. We present approaches for retrospective and global state extraction of event-sourced applications based on distributed event logs. We provide an overview on historical approaches towards distributed debugging and breakpointing, which are closely related to event log-based state reconstruction. We then introduce and evaluate our approach for non-local state extraction from distributed event logs, which is specifically adapted for dynamic and asynchronous event-sourced systems.

2016

Meißner, Dominik; Erb, Benjamin; van der Heijden, Rens W.; Lange, Kristin; Kargl, Frank
Mobile Triage Management in Disaster Area Networks Using Decentralized Replication
Proceedings of the Tenth ACM MobiCom Workshop on Challenged Networks , Seite 7-12.
Herausgeber: ACM,
Oktober 2016
ISBN: 978-1-4503-4256-8

Zusammenfassung: In large-scale disaster scenarios, efficient triage management is a major challenge for emergency services. Rescue forces traditionally respond to such incidents with a paper-based triage system, but technical solutions can potentially achieve improved usability and data availability. We develop a triage management system based on commodity hardware and software components to verify this claim. We use a single-hop, ad-hoc network architecture with multi-master replication, a tablet-based device setup and a mobile application for emergency services. We study our system in cooperation with regional emergency services and describe experiences from a field exercise. We show that state-of-the-art commodity technology provides the means necessary to implement a triage management system compatible with existing emergency service procedures, while introducing additional benefits. This work highlights that powerful real-world ad-hoc networking applications do not require unreasonable development effort, as existing tools from distributed systems, like replicating No-SQL databases, can be used successfully.

Export als: BibTeX, XML

Teaching

Current Teaching

  • Selected Topics in Distributed Systems (ATVS)
  • Research Trends in Distributed Systems (RTDS)
  • Computer Networks and IT-Security in Short (RNSEC-K)

Lab Courses

Seminars and Student Projects

Student Theses

Bachelor/Master Theses

The section lists open and finished topics for theses. More topics for Bachelor/Master theses are available on the thesis website of the institute.

I am also accepting own topics that relate to my fields of interests. Please get in touch for suggestions.

Office Hours

For reliable meetings, please arrange an appointment via mail.
Otherwise, you can try to drop by at my office.

Open Topics for Theses


7.
default
Erb, Benjamin; Meißner, Dominik
Blockchain Analysis with Chronograph
Bachelor's thesis, Master's thesis or individual lab project
Institute of Distributed Systems,
2018
in Vorbereitung

Marker: PROJEKT, AA, BA, MA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: Blockchain technology allows for decentralized, distributed, and secure ledgers that store records (e.g., transactions). Popular blockchain-based systems such as Bitcoin and Etherum have emerged as so-called crypto-currencies. As the ledger maintains the full history of transactions, interactions within the system are always persisted. In this work, the student is asked to design and implement online and offline transaction analyses based on Chronograph, a data processing platform for evolving graphs developed at our Institute. Therefore, different blockchain-based systems should be surveyed and appropriate analysis mechanisms should be conducted.

6.
default
Meißner, Dominik
Dependency Tracking in Distributed Retroactive Applications
Bachelor's thesis, Master's thesis or individual lab project
Institute of Distributed Systems,
2018
in Vorbereitung

Marker: PROJEKT, AA, BA, MA, FrankKargl, retroaction, distributed, DominikMeissner

Zusammenfassung: Retroactive computing enables programmatical access to the history of an application. This offers a variety of capabilities, such as computations and predictions of alternate application timelines, post-hoc bug fixes, and retroactive state explorations. Reads and writes of the application state have to be tracked and persisted in order to support retroaction. This is fairly simple for a single-writer append-only log, but entails various issues in a distributed setting. This thesis/project should explore different approaches for a distributed dependency tracking, including a prototypical implementation based on an existing platform prototype and an evaluation of the resulting artifacts.

5.
default
Erb, Benjamin; Meißner, Dominik
Pause/Shift/Resume in Chronograph
Bachelor's thesis or individual lab project
Institute of Distributed Systems,
2017
in Vorbereitung

Marker: PROJEKT, AA, BA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: Pause/Shift/Resume is a mechanism for doing iterative graph processing on an evolving graph using snapshots. Our Chronograph graph processing platform provides very similar functionalities based on an event-sourced graph model. In this work, the student is asked to incorporate the Pause/Shift/Resume mechanism into our platform. Therefore, the mechanism has to be adapted and adjusted to event-sourced graphs. Furthermore, an evaluation should highlight the runtime behavior of the approach in different workloads.

4.
default
Erb, Benjamin; Meißner, Dominik
Evaluation of Key/Value Stores for Event Sourcing
Bachelor's thesis or individual lab project
Institute of Distributed Systems,
2017
in Vorbereitung

Marker: PROJEKT, AA, BA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: Event sourcing is an alternative persistence approach that maintains a log of state-changing events instead of altering states directly. Event-sourced architectures require an event store for efficiently appending and retrieving log entries. In this project, an evaluation of different key/value stores and alternative (No)SQL stores is to be conducted in order to identify stores appropriate for event sourcing.

3.
default
Erb, Benjamin; Meißner, Dominik
Design and Implementation of a REPL Interface for a Distributed Graph Processing Platform
Bachelor thesis or individual lab project
Institute of Distributed Systems,
2017
in Vorbereitung

Marker: PROJEKT, AA, BA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

2.
default
Erb, Benjamin; Meißner, Dominik
Secondary Index Structures on Event-sourced Graphs
Bachelor's thesis or individual lab project
Institute of Distributed Systems,
2017
in Vorbereitung

Marker: PROJEKT, AA, BA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: As part of an ongoing research project at our institute, we are currently developing a novel distributed computing platform prototype. The systems provides a graph-based, asynchronous programming model and takes advantage of event sourcing for history-aware computations. The aim of this student work is the identification and evaluation of appropriate secondary index structures, in order to provide fast access onto specific notes of the graph topology. Also, a prototypical implementation is part of this work.

1.
default
Erb, Benjamin; Meißner, Dominik
Interactive exploration of event-sourced graphs
Master's thesis, Diploma thesis, or Project (8 or 16 ECTS)
Institute of Distributed Systems,
2016
in Vorbereitung

Marker: AA, MA, DA, PROJEKT, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: The chronograph platform is a system for computing on evolving graphs. One module of the platform should provide an interactive user interface for exploring the history, evolution, and topology of the graph. The goal of this project is the design and implementation of a scalable, web-based user interface for the exploration of chronograph data.

Individual Student Projects

Master Projects

I provide a number of  individual master projects that are related to my field of research. Several student thesis topics can also be worked on as part of a master project.

Most projects can be conducted as 8 LP or 16 LP projects, depending on the focus and extent of the topic.

For more details, please get in touch with me.

Office Hours

For reliable meetings, please arrange an appointment via mail.
Otherwise, you can try to drop by at my office.

Open Topics for Projects


Erb, Benjamin; Meißner, Dominik
Blockchain Analysis with Chronograph
Bachelor's thesis, Master's thesis or individual lab project
Institute of Distributed Systems,
2018
in Vorbereitung

Marker: PROJEKT, AA, BA, MA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: Blockchain technology allows for decentralized, distributed, and secure ledgers that store records (e.g., transactions). Popular blockchain-based systems such as Bitcoin and Etherum have emerged as so-called crypto-currencies. As the ledger maintains the full history of transactions, interactions within the system are always persisted. In this work, the student is asked to design and implement online and offline transaction analyses based on Chronograph, a data processing platform for evolving graphs developed at our Institute. Therefore, different blockchain-based systems should be surveyed and appropriate analysis mechanisms should be conducted.

Meißner, Dominik
Dependency Tracking in Distributed Retroactive Applications
Bachelor's thesis, Master's thesis or individual lab project
Institute of Distributed Systems,
2018
in Vorbereitung

Marker: PROJEKT, AA, BA, MA, FrankKargl, retroaction, distributed, DominikMeissner

Zusammenfassung: Retroactive computing enables programmatical access to the history of an application. This offers a variety of capabilities, such as computations and predictions of alternate application timelines, post-hoc bug fixes, and retroactive state explorations. Reads and writes of the application state have to be tracked and persisted in order to support retroaction. This is fairly simple for a single-writer append-only log, but entails various issues in a distributed setting. This thesis/project should explore different approaches for a distributed dependency tracking, including a prototypical implementation based on an existing platform prototype and an evaluation of the resulting artifacts.

Meißner, Dominik
Practical Overview of Serverless Computing
Individual lab project
Institute of Distributed Systems,
2018
in Vorbereitung

Marker: PROJEKT, FrankKargl, distributed, DominikMeissner

Zusammenfassung: Serverless is a current trend in cloud computing. In contrast to what the name indicates it does not describe an architecture without servers. What it really means is that a developer does not have to worry about servers and infrastructure, instead they can completely focus on their code. All big cloud computing provider offer their own flavor of serverless computing. The goal of this project is to provide an overview of the similarities and differences of these platforms. Furthermore, a goal of this project is the implementation of a reference application that can be used to compare different platforms. As a practical part of this project a multi node Apache OpenWhisk (an open source serverless platform) cluster should be set up and tested.

Erb, Benjamin; Meißner, Dominik
Pause/Shift/Resume in Chronograph
Bachelor's thesis or individual lab project
Institute of Distributed Systems,
2017
in Vorbereitung

Marker: PROJEKT, AA, BA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: Pause/Shift/Resume is a mechanism for doing iterative graph processing on an evolving graph using snapshots. Our Chronograph graph processing platform provides very similar functionalities based on an event-sourced graph model. In this work, the student is asked to incorporate the Pause/Shift/Resume mechanism into our platform. Therefore, the mechanism has to be adapted and adjusted to event-sourced graphs. Furthermore, an evaluation should highlight the runtime behavior of the approach in different workloads.

Erb, Benjamin; Meißner, Dominik
Evaluation of Key/Value Stores for Event Sourcing
Bachelor's thesis or individual lab project
Institute of Distributed Systems,
2017
in Vorbereitung

Marker: PROJEKT, AA, BA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: Event sourcing is an alternative persistence approach that maintains a log of state-changing events instead of altering states directly. Event-sourced architectures require an event store for efficiently appending and retrieving log entries. In this project, an evaluation of different key/value stores and alternative (No)SQL stores is to be conducted in order to identify stores appropriate for event sourcing.

Erb, Benjamin; Meißner, Dominik
Design and Implementation of a REPL Interface for a Distributed Graph Processing Platform
Bachelor thesis or individual lab project
Institute of Distributed Systems,
2017
in Vorbereitung

Marker: PROJEKT, AA, BA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Erb, Benjamin; Meißner, Dominik
Secondary Index Structures on Event-sourced Graphs
Bachelor's thesis or individual lab project
Institute of Distributed Systems,
2017
in Vorbereitung

Marker: PROJEKT, AA, BA, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: As part of an ongoing research project at our institute, we are currently developing a novel distributed computing platform prototype. The systems provides a graph-based, asynchronous programming model and takes advantage of event sourcing for history-aware computations. The aim of this student work is the identification and evaluation of appropriate secondary index structures, in order to provide fast access onto specific notes of the graph topology. Also, a prototypical implementation is part of this work.

Erb, Benjamin; Meißner, Dominik
Interactive exploration of event-sourced graphs
Master's thesis, Diploma thesis, or Project (8 or 16 ECTS)
Institute of Distributed Systems,
2016
in Vorbereitung

Marker: AA, MA, DA, PROJEKT, BenjaminErb, FrankKargl, sidgraph, distributed, DominikMeissner

Zusammenfassung: The chronograph platform is a system for computing on evolving graphs. One module of the platform should provide an interactive user interface for exploring the history, evolution, and topology of the graph. The goal of this project is the design and implementation of a scalable, web-based user interface for the exploration of chronograph data.

Seminars

Currently Supervised Seminar Courses

  • Privacy in the Internet (PRIV)
  • Selected Topics in Distributed Systems (ATVS)
  • Research Trends in Distributed Systems (RTDS)

Office Hours

For reliable meetings, please arrange an appointment via mail.
Otherwise, you can try to drop by at my office.

Current Topics

  1. Distributed Causality Tracking (Seminar ATVS/RTDS; Winter Term 2018/2019)
  2. GDPR: Theorie und Praxis (Proseminar PRIV; Winter Term 2018/2019)
  3. Privacy in Instant Messaging Anwendungen (Proseminar PRIV; Winter Term 2018/2019)

Previous Topics

  1. Machine Learning on Event Streams (Seminar ATVS; Summer Term 2018)
  2. Networking in Online Multiplayer Games (Seminar ATVS; Winter Term 2017/2018)
  3. Privacy in Instant Messaging Anwendungen (Proseminar PRIV; Winter Term 2017/2018)