migration_performance_analysis/data_visualization
2026-01-10 14:23:02 +00:00
..
css Add data_visualization/css/theme.css 2026-01-10 14:23:01 +00:00
js Add data_visualization/js/visualizations.js 2026-01-10 14:23:02 +00:00
index.html Add data_visualization/index.html 2026-01-10 14:22:59 +00:00
README.md Add data_visualization/README.md 2026-01-10 14:23:02 +00:00

Migration Performance Analysis – Data Visualization

Übersicht

Dieses Projekt bietet eine Weboberfläche zur Visualisierung der Auswirkungen von vCPU‑Pinning auf Migrationsspitzen und deren Metriken in virtualisierten Systemen. Ziel ist es, die Messergebnisse verständlich und interaktiv darzustellen, um Performance‑Unterschiede zwischen verschiedenen Pinning‑Setups zu analysieren.


Hauptfunktionen

  • Darstellung der Migrationsmetriken nach Setup‐Typen:
    • unpinned
    • halb gepinnt
    • voll gepinnt
  • Visualisierung von Spike‑Auswertungen über Chart.js‑Diagramme
  • Filterung nach Lauf (run) oder Migrations‑Typ
  • Interaktive Aktualisierung der Diagramme bei Filteränderungen
  • Automatisches Laden der Metrikdaten über die API‑Route /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 JSON‑Objekt mit folgenden Feldern:
    {
      "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 API‑Abruf 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 Pinning‑Setup.

Optionale Parameter:

  • filter – Filterung nach setup_type
  • run_id – Einschränkung auf einen bestimmten Lauf

Erwartete Antwortstruktur:

{
  "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 API‑Route.

Projektstruktur

├── index.html
├── css/
│   └── style.css
├── js/
│   ├── app.js
│   ├── api.js
│   └── visualizations.js
└── README.md

Lizenz und Hinweis

© 2026 Donau2Space.de