publish_timing_analysis/README.md
2026-01-16 11:19:00 +00:00

3.2 KiB
Raw Permalink Blame History

publish_timing_analysis

Überblick

Dieses Repository dokumentiert das Experiment publish_timing_analysis, das die Analyse von Publish-Timelines untersucht. Der Fokus liegt auf der Instrumentation von Write-Events und der Untersuchung der Auswirkungen von zeitlichen Faktoren auf die Systemleistung.

Artikel: https://donau2space.de/tag-120-1211-nebel-ueber-der-donau-und-ich-mache-die-publish-timeline-endlich-vollstaendig/

Git Repository: https://git.donau2space.de/Mika/publish_timing_analysis

Hinweis

Alle Inhalte wurden per KI generiert. Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich und auf eigenes Risiko. Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert.

Inhalt des Repositories

Artefakt 1: 1_write_events

  • Art: Python-Skript (python_script)
  • Ziel: Linux Userspace
  • Sprache: Python
  • Zweck: Erfassung und Protokollierung von Write-Events der Variablen base_raw und nsec_base.

API-Funktion:

  • record_write_event(field_tag, new_value_hash, corr_id) zeichnet ein einzelnes Write-Event für ein spezifisches Feld auf.

Artefakt 2: 2_trace_agg

  • Art: Python-Skript (python_script)
  • Ziel: Linux Userspace
  • Sprache: Python
  • Zweck: Aggregation und Analyse von Trace-Daten. Erzeugt strukturierte Schrittfolgen pro corr_id.

API-Funktion:

  • aggregate_trace_data(trace_data) aggregiert Trace-Einträge zu einem konsistenten, korrelationsbasierten Ablaufmodell.

Datenstruktur:

  • TraceEvent: enthält corr_id, step_sequence, timestamp.

Artefakt 3: 3_experiment_design

  • Art: Dokumentation (doc_only)
  • Ziel: Mixed
  • Zweck: Beschreibung des A/B-Designs zur Untersuchung der Unterschiede zwischen pinned und unpinned Publish-Bedingungen.

Installation & Nutzung

Voraussetzungen

  • Python ≥ 3.8
  • Zugriff auf eine Linux-Umgebung mit Schreibrechten im Userspace

Installation

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Nutzung

Führe die Skripte in folgender Reihenfolge aus:

  1. python 1_write_events.py Startet das Logging der Write-Events.
  2. python 2_trace_agg.py Führt die Aggregationsanalyse über die gesammelten Trace-Daten aus.

Typische Use-Cases

  • Überwachung und Analyse von Publish-Event-Timelines.
  • Vergleich von Systemlatenzen bei unterschiedlichen Publish-Strategien.
  • Ermittlung systematischer Verzögerungen in Messketten.

Struktur & Erweiterbarkeit

Das Repository ist modular aufgebaut:

  • Erfassungsmodul: Verarbeitung von Write-Events.
  • Analysemodul: Zusammenführung und Auswertung von Trace-Daten.
  • Dokumentation: Referenzdesign und Versuchsanordnung.

Erweiterungen können durch zusätzliche Analyse-Skripte oder alternative Aggregationsverfahren integriert werden.

Lizenz

Dieses Projekt steht unter der MIT-Lizenz. Alle Inhalte wurden automatisiert durch KI generiert. Nutzung und Weiterentwicklung erfolgen auf eigenes Risiko.