Commit 4a92acd8 authored by Daniel Seybold's avatar Daniel Seybold
Browse files

added updated architecture diagram, extended feature overview

parent 63b1c518
# Mowgli Feature Overview
# Mowgli Feature & Architecture Overview
In the following an overview of the supported cloud providers, DBMS and workloads is presented.
In the following a breif overview on the Mowgli architecture and the supported cloud providers, DBMS and workloads are presented.
**Mowgli Versions:**
- 0.1 (supporting performance and scalability evaluations based on the paper presented at ICPE 2019)
- 0.2 (supporting elasticity and availability evaluation scenarios, **coming soon!**)
- 0.1, supporting performance and scalability evaluations based YCSB. The features are based on the paper presented at **ICPE 2019**. For a detailed overview on the 0.1 features please check the [feature overview 0.1](https://omi-gitlab.e-technik.uni-ulm.de/mowgli/getting-started/-/blob/0.1/features/README.md)
- 0.2, supporting elasticity and availability evaluation scenarios, including the new benchmarks TPC-C and TSBS
## Benchmarks
### Yahoo Cloud Serving Benchmark (YCSB)
[Source](https://github.com/brianfrankcooper/YCSB)
Version: 0.15.0
### TPC-C (by CockroachDB)
[Source](https://github.com/cockroachdb/loadgen)
Version: latest
### Time Series Benchmarking Suite (TSBS)
[Source](https://github.com/timescale/tsbs)
Version: latest
## Cloud providers
**Amazon EC2**
......@@ -29,9 +51,10 @@ Topology: single/cluster
Evaluation Scenarios:
| Performance (0.1) | Scalability (0.1) | Elasticity (0.2) | Availability (0.2) |
| ------------------ | ------------------ | ------------------ | ------------------ |
| :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
| Performance | Scalability | Elasticity | Availability |
| ------------------------------- | ------------------------------- | ---------------------- | ---------------------- |
| :white_check_mark: YCSB | :white_check_mark:YCSB | :white_check_mark:YCSB | :white_check_mark:YCSB |
| :white_check_mark: TSBS (alpha) | :white_check_mark: TSBS (alpha) | Not tested | Not tested |
**CockroachDB**
......@@ -41,9 +64,10 @@ Topology: single/cluster
Evaluation Scenarios:
| Performance (0.1) | Scalability (0.1) | Elasticity (0.2) | Availability (0.2) |
| ------------------ | ------------------ | ---------------- | ------------------ |
| :white_check_mark: | :white_check_mark: | :no_entry: | :white_check_mark: |
| Performance | Scalability | Elasticity | Availability |
| ------------------------ | ------------------------ | ---------- | ----------------------- |
| :white_check_mark: YCSB | :white_check_mark: YCSB | :no_entry: | :white_check_mark: YCSB |
| :white_check_mark: TPC-C | :white_check_mark: TPC-C | Not tested | Not tested |
**Couchbase**
......@@ -53,9 +77,9 @@ Topology: single/cluster
Evaluation Scenarios:
| Performance (0.1) | Scalability (0.1) | Elasticity (0.2) | Availability (0.2) |
| ----------------- | ----------------- | ---------------- | ------------------ |
| ✅ | ✅ | ✅ | ✅ |
| Performance | Scalability | Elasticity | Availability |
| ----------- | ----------- | ---------- | ------------ |
| ✅ YCSB | ✅ YCSB | ✅ YCSB | ✅ YCSB |
**Elasticsearch**
......@@ -65,9 +89,25 @@ Topology: single/cluster
Evaluation Scenarios:
| Performance (0.1) | Scalability (0.1) | Elasticity (0.2) | Availability (0.2) |
| ----------------- | ----------------- | ---------------- | ------------------ |
| ✅ | ✅ | ? | ? |
| Performance | Scalability | Elasticity | Availability |
| ----------- | ----------- | ---------- | ------------ |
| ✅ YCSB | ✅ YCSB | Not tested | Not tested |
**InfluxDB**
Version: 1.8.0 community
Topology: single
Evaluation Scenarios:
| Performance | Scalability | Elasticity | Availability |
| -------------- | ----------- | ---------- | ------------ |
| ✅ TSBS (alpha) | Not tested | Not tested | Not tested |
**MongoDB**
......@@ -77,17 +117,32 @@ Topology: single/cluster replicated/cluster sharded
Evaluation Scenarios:
Cluster replicated:
**Cluster replicated:**
| Performance | Scalability | Elasticity | Availability |
| ----------- | ----------- | ---------- | ----------------------- |
| ✅ YCSB | :no_entry: | :no_entry: | :white_check_mark: YCSB |
| ✅ TSBS | :no_entry: | :no_entry: | Not tested |
| Performance (0.1) | Scalability (0.1) | Elasticity (0.2) | Availability (0.2) |
| ----------------- | ----------------- | ---------------- | ------------------ |
| ✅ | :no_entry: | :no_entry: | :white_check_mark: |
**Cluster sharded:**
| Performance | Scalability | Elasticity | Availability |
| ----------- | ----------------------- | ----------------------- | ------------ |
| ✅ YCSB | :white_check_mark: YCSB | :white_check_mark: YCSB | :no_entry: |
**PostgreSQL**
Version: 12
Topology: single
Evaluation Scenarios:
| Performance | Scalability | Elasticity | Availability |
| ----------- | ----------- | ---------- | ------------ |
| ✅ YCSB | :no_entry: | :no_entry: | :no_entry: |
Cluster sharded:
| Performance (0.1) | Scalability (0.1) | Elasticity (0.2) | Availability (0.2) |
| ----------------- | ------------------ | ------------------ | ------------------ |
| ✅ | :white_check_mark: | :white_check_mark: | :no_entry: |
**Riak**
......@@ -97,9 +152,25 @@ Topology: single/cluster
Evaluation Scenarios:
| Performance (0.1) | Scalability (0.1) | Elasticity (0.2) | Availability (0.2) |
| ----------------- | ------------------ | ------------------ | ------------------ |
| ✅ | :white_check_mark: | :white_check_mark: | ✅ |
| Performance | Scalability | Elasticity | Availability |
| ----------- | ----------------------- | ----------------------- | ------------ |
| ✅ YCSB | :white_check_mark: YCSB | :white_check_mark: YCSB | ✅ YCSB |
**TimescaleDB**
Version: 12 community edition
Topology: single
Evaluation Scenarios:
| Performance | Scalability | Elasticity | Availability |
| -------------- | ----------- | ---------- | ------------ |
| ✅ TSBS (alpha) | :no_entry: | :no_entry: | :no_entry: |
**Yugabyte**
......@@ -109,20 +180,23 @@ Topology: single/cluster replicated/cluster sharded
Evaluation Scenarios:
| Performance (0.1) | Scalability (0.1) | Elasticity (0.2) | Availability (0.2) |
| ----------------- | ----------------- | ---------------- | ------------------ |
| ✅ | ✅ | ? | ? |
| Performance | Scalability | Elasticity | Availability |
| ----------- | ----------- | ---------- | ------------ |
| ✅ YCSB | ✅ YCSB | Not tested | ✅ YCSB |
## Workloads
### Yahoo Cloud Serving Benchmark (YCSB)
[Source](https://github.com/brianfrankcooper/YCSB)
# Mowgli Architecture Overview
Version: 0.15.0
### TPC-C
[Source](https://github.com/cockroachdb/loadgen)
The Mowgli framework builds upon an extensible and modular architecture with multiple components as depicted in the following architecture diagram.
![Mowgli Architecture](../misc/mowgli_architecture_spec_1.png)
Conceptual and technical details on the specific components are presented in the respective publications [Mowgli: Finding Your Way in the DBMS Jungle](https://dl.acm.org/doi/10.1145/3297663.3310303), [Kaa: Evaluating Elasticity of Cloud-Hosted DBMS](https://ieeexplore.ieee.org/document/8968865) and [King Louie: reproducible availability benchmarking of cloud-hosted DBMS](https://dl.acm.org/doi/abs/10.1145/3341105.3373968)
Version: latest
\ No newline at end of file
......@@ -158,4 +158,23 @@ series = {SAC '20}
doi = {10.5281/zenodo.3518786},
url = {https://doi.org/10.5281/zenodo.3518786}
}
```
\ No newline at end of file
```
## Mowgli V0.1 Software Artefacts
```
@software{seybold_daniel_2019_3341512,
author = {Seybold,Daniel and
Domaschka, Jörg},
title = {Mowgli: Finding Your Way in the DBMS Jungle},
month = jul,
year = 2019,
publisher = {Zenodo},
version = {0.1},
doi = {10.5281/zenodo.3341512},
url = {https://doi.org/10.5281/zenodo.3341512}
}
```
......@@ -4,7 +4,7 @@ The Mowgli components are encapsulated as Docker containers and bundle via Docke
The docker-compose contains all required components that are highlighted in blue.
![mowgli-setup](../misc/architecture_getting_started.png)
![mowgli-setup](../misc/mowgli_architecture_spec_2.png)
While the Mowgli framework can be run locally or on a VM, the Workload-API needs
to run on a separate VM within the selected cloud (to use the private network
......
......@@ -2,6 +2,14 @@
#### Containers fail on start-up
Please make sure you have followed all steps described [here](../setup/README.md).
While the set-up process has been successfully tested on various platforms, please also check the docker-compose logs for any additional error messages: `docker-compose logs`
In case of any unresolvable errors feel free to drop us an email at the support mailing list with the docker-compose logs : mowgli@lists.uni-ulm.de
#### WEB Interface is not accessible
Please make sure you have set the **public IP** in `.env` file for the docker-compose, see also [here](../setup/README.md)
#### Logging
......@@ -37,7 +45,7 @@ In case you have registered invalid cloud credentials (check the Cloudiator-Serv
To reset Mowgli run the following script from the docker folder:
```
# change into the directory of the docker-composer
# change into the mowgli directory with the docker-composer
./resetMowgli
```
......@@ -46,7 +54,7 @@ To reset Mowgli run the following script from the docker folder:
In case you want to update Mowgli to the **latest** release run the following script from the docker folder:
```
# change into the directory of the docker-composer
# change into the mowgli directory with the docker-composer
./updateMowgli
```
......@@ -54,7 +62,7 @@ In case you want to update Mowgli to a specific release you need to adapt the `u
## Support
In case of any issues with setting up Mowgli or running experiments feel free to subscribe the the Mowgli mailing list and/or post your issue at
In case of any issues with setting up Mowgli or running experiments feel free to reach out for help via the Mowgli support mailing list
mowgli@lists.uni-ulm.de
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment