# Batch 2 Analysis ## Überblick Dieses Projekt („**batch_2_analysis**“) untersucht die Performance zweier Speicherstrukturen innerhalb einer Datentransformations-Pipeline. Der Schwerpunkt liegt auf der Analyse der p99-Kante sowie der Identifikation und Bewertung von Ausreißern in Messdaten. Ziel ist es, Unterschiede im Verhalten von „pinned“ und „unpinned“ Datenpfaden zu quantifizieren und statistisch auszuwerten. **Artikel:** [https://donau2space.de/tag-151-batch-2-ist-durch-10x-pinned-10x-unpinned-und-die-p99-kante-wird-sichtbar/](https://donau2space.de/tag-151-batch-2-ist-durch-10x-pinned-10x-unpinned-und-die-p99-kante-wird-sichtbar/) **Repository:** [https://git.donau2space.de/Mika/batch_2_analysis](https://git.donau2space.de/Mika/batch_2_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 Hauptkomponenten zur Datenverarbeitung, Simulation und Analyse: ### 1. mess_log_processing - **Art:** Python-Skript - **Ziel:** Linux Userspace - **Sprache:** Python - **Zweck:** Verarbeitung von Messdaten aus JSON- und CSV-Dateien, Erstellung aggregierter Statistiken als Grundlage für weitere Analyse. - **API-Funktionen:** - `process_logs(json_file, csv_file)` → Liefert ein DataFrame mit aggregierten Statistiken. - **Datenstruktur:** `LogData` (JSON) mit Feldern: `t_publish`, `t_gate_read`, `t_index_visible`, `pinned_flag`, `timeouts`, `drift_signature`. ### 2. policy_evaluation - **Art:** Python-Skript - **Ziel:** Linux Userspace - **Sprache:** Python - **Zweck:** Simulation und Evaluierung verschiedener Speicherrichtlinien über die verarbeiteten Logdaten. - **API-Funktionen:** - `evaluate_policies(log_data)` → Führt die Evaluierung durch und gibt die Ergebnisse zurück. - **Datenstruktur:** `PolicyResults` (JSON) mit Feldern: `p99_coverage`, `remaining_missing_cases`, `conversion_rates`, `max_wait_time`. ### 3. statistical_analysis - **Art:** Python-Skript - **Ziel:** Linux Userspace - **Sprache:** Python - **Zweck:** Statistische Analyse der p99-Region und Ausreißer basierend auf den verarbeiteten Logdaten. - **API-Funktionen:** - `analyze_outliers(log_data)` → Bestimmt Ausreißer und liefert eine strukturierte Analyse. - **Datenstruktur:** `OutlierAnalysis` (JSON) mit Feldern: `column_name`, `outlier_value`, `drift_signature`, `timeout_counts`. ## Installation & Nutzung ### Voraussetzungen - Linux-System mit Python ≥ 3.8 - Python-Pakete: pandas, numpy, scipy ### Installation ``` git clone https://git.donau2space.de/Mika/batch_2_analysis.git cd batch_2_analysis pip install -r requirements.txt ``` ### Nutzung ``` python mess_log_processing.py input.json input.csv python policy_evaluation.py processed_data.json python statistical_analysis.py policy_results.json ``` Die Skripte sind sequenziell anwendbar: Ergebnisse aus den vorangehenden Schritten dienen als Eingabe für die folgende Analyse. ## Typische Use-Cases - Vergleich von p99-Latenz zwischen pinned und unpinned Speicherpfaden - Quantifizierung von Drift und Timeout-Anomalien - Bewertung von Speicherstrategien im Hinblick auf Ausreißerhäufigkeit und -verteilung - Erstellung reproduzierbarer Auswertungen von Performance-Daten aus JSON/CSV-Sammlungen ## Struktur & Erweiterbarkeit Die Struktur ist modular aufgebaut: - `mess_log_processing` → Datenerfassung & Vorverarbeitung - `policy_evaluation` → Logik- und Richtlinienanalyse - `statistical_analysis` → Statistische Weiterverarbeitung und Ergebnisaufbereitung Erweiterungen können durch Hinzufügen neuer Analysefunktionen oder alternative Evaluationsstrategien erfolgen. Die bestehenden APIs liefern klar definierte Eingangs- und Rückgabeformate. ## Lizenz MIT-Lizenz. Alle Inhalte wurden automatisch generiert. Benutzung und Weiterentwicklung erfolgen auf eigenes Risiko.