Add data_visualization/README.md

This commit is contained in:
Mika 2026-01-10 14:23:02 +00:00
parent 2e94669aab
commit 10556bd97e

View file

@ -0,0 +1,84 @@
# Migration Performance Analysis Data Visualization
## Übersicht
Dieses Projekt bietet eine Weboberfläche zur **Visualisierung der Auswirkungen von vCPUPinning** auf Migrationsspitzen und deren Metriken in virtualisierten Systemen. Ziel ist es, die Messergebnisse verständlich und interaktiv darzustellen, um PerformanceUnterschiede zwischen verschiedenen PinningSetups zu analysieren.
---
## Hauptfunktionen
- Darstellung der Migrationsmetriken nach SetupTypen:
- *unpinned*
- *halb gepinnt*
- *voll gepinnt*
- Visualisierung von SpikeAuswertungen über **Chart.js**Diagramme
- Filterung nach **Lauf (run)** oder **MigrationsTyp**
- Interaktive Aktualisierung der Diagramme bei Filteränderungen
- Automatisches Laden der Metrikdaten über die APIRoute */migration_report*
- Anzeige von Vergleichsstatistiken und Prozentwerten
---
## Datenfluss
1. Beim Laden der Seite ruft `js/api.js` die Route **/migration_report** via `GET` auf.
2. Die API liefert ein JSONObjekt mit folgenden Feldern:
```json
{
"setups": ["unpinned", "half_pinned", "pinned"],
"metrics": [{"name": "string", "value": "number", "unit": "string"}],
"spikes": [{"timestamp": "string", "intensity": "number"}]
}
```
3. `js/visualizations.js` nutzt **Chart.js**, um die Diagramme dynamisch zu rendern.
4. Änderungen an Filteroptionen führen zu einem erneuten APIAbruf und Aktualisierung der visuell dargestellten Daten.
---
## APIÜberblick
**Route:** `/migration_report`
**Methode:** `GET`
**Verwendung in:** `js/api.js`, `js/app.js`
**Zweck:**
Abrufen der Migrationsmetriken und Klassifizierung nach PinningSetup.
**Optionale Parameter:**
- `filter` Filterung nach *setup_type*
- `run_id` Einschränkung auf einen bestimmten Lauf
**Erwartete Antwortstruktur:**
```json
{
"setups": ["unpinned", "half_pinned", "pinned"],
"metrics": [{"name": "string", "value": "number", "unit": "string"}],
"spikes": [{"timestamp": "string", "intensity": "number"}]
}
```
---
## Installation & Nutzung
1. Repository klonen oder entpacken.
2. Im Hauptverzeichnis einen lokalen Webserver starten (z.B. `python3 -m http.server`).
3. Im Browser die Startdatei (`index.html`) öffnen.
4. Die Anwendung lädt automatisch die Metriken über die definierte APIRoute.
---
## Projektstruktur
```
├── index.html
├── css/
│ └── style.css
├── js/
│ ├── app.js
│ ├── api.js
│ └── visualizations.js
└── README.md
```
---
## Lizenz und Hinweis
© 2026 Donau2Space.de