diff --git a/README.md b/README.md new file mode 100644 index 0000000..ec0158e --- /dev/null +++ b/README.md @@ -0,0 +1,99 @@ +# Replikation 31B Analysis + +## Überblick +Dieses Repository dokumentiert das Experiment **replikation_31b_analysis**. Ziel ist die Analyse der Replikationsexperimente mit Fokus auf Bandbreite und *retry_tailp99*, einschließlich visueller und datenanalytischer Komponenten. + +**Link zum Artikel:** [https://donau2space.de/tag-187-run-31b-replikation-8x-tail-sprung-bestaetigt-und-er-sitzt-wieder-im-hotspot/](https://donau2space.de/tag-187-run-31b-replikation-8x-tail-sprung-bestaetigt-und-er-sitzt-wieder-im-hotspot/) + +**Git Repository:** [https://git.donau2space.de/Mika/replikation_31b_analysis](https://git.donau2space.de/Mika/replikation_31b_analysis) + +### Hinweis +Alle Inhalte wurden per KI generiert. +Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich auf eigenes Risiko. +Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert. + +--- + +## Inhalt des Repositories +Das Repository enthält drei Hauptartefakte: + +### 1. Dokumentation – *run_comparison* +- **Art:** doc_only +- **Ziel:** mixed (plattformunabhängig) +- **Beschreibung:** Enthält die Analyse und den quantitativen Vergleich der drei Experimentläufe. Darstellung von Bandbreite, Delta vs. Baseline und *retry_tailp99*-Werten. +- **Relevante Datenstruktur:** + - `RunComparison`: JSON-Objekt mit Feldern *run_id*, *parallelism*, *bandwidth*, *delta_vs_baseline*, *retry_tailp99*, *retry_tailp99_threshold*. + +### 2. Web-Oberfläche – *data_visualization* +- **Art:** web_ui +- **Ziel:** web +- **Sprachen:** HTML, CSS, JavaScript +- **Beschreibung:** Visualisiert die Replikationsdaten und Messergebnisse in einer Browseroberfläche. +- **API-Funktionen:** + - `fetchRunData(run_id)`: Ruft Laufdaten anhand der ID ab und liefert ein *RunComparison*-Objekt. +- **Routen:** + - `GET /run-data`: API-Endpunkt zum Abruf von Replikationsdaten. + +### 3. Python-Skript – *retry_tail_analysis* +- **Art:** python_script +- **Ziel:** Linux-Userspace +- **Sprache:** Python +- **Beschreibung:** Analysiert die *retry_tailp99*-Werte aus den Experimentdatensätzen. +- **API-Funktionen:** + - `analyze_retry_tail(data)`: Berechnet und liefert den statistischen Rückgabewert der *retry_tailp99*-Analyse. +- **Verwendete Datenstruktur:** + - `ExperimentData`: JSON-Objekt mit *run_id*, *retry_tailp99*, *threshold*. + +--- + +## Voraussetzungen (Webserver) +- Webserver mit Unterstützung für statische Dateien (z. B. Nginx oder Apache) +- Optional: REST-kompatible Schnittstelle für die Bereitstellung von Replikationsdaten + +--- + +## Starten der Anwendung +1. Repository klonen: + ```bash + git clone https://git.donau2space.de/Mika/replikation_31b_analysis + ``` +2. HTML-Dateien der *data_visualization*-Komponente im Browser öffnen oder über Webserver bereitstellen. +3. Python-Umgebung mit erforderlichen Abhängigkeiten starten (siehe unten). + +--- + +## Installation & Nutzung (Python-Komponente) +1. Abhängigkeiten installieren: + ```bash + pip install -r requirements.txt + ``` +2. Analyse-Skript ausführen: + ```bash + python retry_tail_analysis.py + ``` + +--- + +## Typische Use-Cases +- Vergleich von Replikationsläufen anhand quantitativer Daten. +- Analyse der *retry_tailp99*-Signale zur Identifikation von Engpässen. +- Visualisierung der Deltawerte zwischen Baseline und Beobachtungen. +- Integration der Analysekomponenten in andere Monitoring-Pipelines. + +--- + +## Struktur & mögliche Erweiterungen +- **Verzeichnisstruktur:** + - `/docs` – Dokumentation der Experimente (run_comparison) + - `/web` – Web-Frontend und API-Komponenten (data_visualization) + - `/scripts` – Python-Analysen und Datenauswertung (retry_tail_analysis) +- **Erweiterungsideen:** + - Ergänzung neuer Lauf-Parser. + - Integration zusätzlicher Visualisierungsarten. + - Export der Analyseergebnisse im JSON- oder CSV-Format. + +--- + +## Lizenz +Dieses Projekt steht unter der **MIT-Lizenz**. +Verwendung, Weiterverbreitung und Modifikation sind unter Beibehaltung der Lizenzhinweise gestattet. \ No newline at end of file