zur Startseite


Bayesian Reliability Analysis for MongoDB
Betreuer MSc ETH Inf.-Ing. Otto Bibartiu
Prüfer Prof. Dr. rer. nat. Dr. h. c. Kurt Rothermel

Industry 4.0 and the Internet of Things (IoT) are of great interest for industry and research. In order to
keep up with the increasing demand on sophisticated IoT devices, Robert Bosch GmbH has built the
Bosch IoT Cloud (BIC) for his clients, which enables enterprise service applications for the emerging
field of IoT in various domains. However, Cloud services must offer a well-defined Quality of Service
(QoS), specified as part of the Service Level Agreements (SLA) between the cloud service customer
and service provider. Failure to deliver the specified QoS might result in significant loss of reputation
and ultimately loss of revenue of the service provider.

The goal of this thesis is to develop a Bayesian reliability model for one specific cloud service, namely,
MongoDB. NoSQL data stores are one essential building block to implement distributed cloud services.
So far, unstructured databases have received little attention with respect to rigorous availability modeling.
In detail, we will focus on Bayesian reliability models for the MongoDB service. MongoDB supports
fragmentation, replication, and load balancing. The availability model should cover all these different kinds of
configurations and execution models. Besides the MongoDB service itself, the availability
model should also explicitly consider the system topology, e.g., the placement of replicas in the same
rack, and the binding mechanisms within the BIC, e.g., the MongoDB broker and BOSH, and the service
deployment tool.

The final model should allow for a ‘‘what if’’ analysis, i.e., through changing system parameters like
assumed failure and repair rates or number of replicas, the system evaluates the expected availability
for the given configuration. The inverse, i.e., finding a configuration for a given target availability, is
beyond the scope of this work. Existing tools and libraries can be used, for instance OpenBUGS. For
evaluating Bayesian networks and facilitate evaluations, a framework for feeding these tools shall be


Background in statistics, especially Bayesian statistics are very useful.
Good programming skills in general. Knowledge of Cloud technologies (IaaS, PaaS, SaaS)
and database systems are beneficial.