Machine Learning, Score und Forecast
SPOT lernt das erwartete Verhalten je SAP-Target, Metrik, Parametersatz und Serie.
adaptive-robust-v4 priorisiert Präzision: Ein hoher Score erfordert eine
seltene, materielle und für diese Metrik schädliche Änderung.
ML ergänzt Schwellwerte. Es bestätigt keine Ursache und ersetzt weder Events, Jobs, Alerts noch SAP-Kontext.
Globale Steuerung
Das globale Menü Analysis ist anfangs deaktiviert und kann Folgendes zeigen:
- Static thresholds: Warning- und Critical-Linien.
- Expected range: kalibriertes Band und typischer Wert.
- Forecast: Vorhersage für die nächsten 24 Stunden.
- ML score points: Punkte auf der Istserie und ein Score-Regler von 0–100.
Die Einstellung gilt für alle kompatiblen Zeitdiagramme. In einem erweiterten Diagramm können Forecast oder ML scores nur für dieses Modal aktiviert werden.
Was das Modell lernt
- Es verwendet bis zu 42 Tage in internen 5-Minuten-Buckets.
- Es verwendet die Zeitzone der Quelle für Tages-, Wochen- und Zeitumstellungsmuster.
- Es vergleicht Niveau/Trend, tägliche, wöchentliche, kombinierte Saisonalität und sporadische Signale. Bei vergleichbarer zeitlicher Validierung gewinnt das einfachste Modell.
- Beim täglichen Training wählt SPOT das Modell für den zentralen Prognosewert jedes Zeithorizonts getrennt anhand früherer Prognosefehler. Jede historische Prognose wird nur mit Daten bewertet, die vor ihrer Ausgabe verfügbar waren. Dieselbe Serie kann daher nach einer und nach 24 Stunden verschiedene Modelle verwenden.
- Für Niveausignale vergleicht SPOT den letzten abgeschlossenen Bucket mit dem Median der letzten Stunde und dem Median von 24 Stunden. Die tägliche kausale Validierung wählt je Horizont; verbessert die neuere Variante den Fehler nicht um mehr als 5 %, bleibt die 24-Stunden-Variante erhalten.
- Das erwartete Band wird mit vergangenen Prognosefehlern kalibriert, die keine zukünftigen Daten verwendet haben. Die Ein-Stunden- und 24-Stunden-Prognosen kalibrieren ihre Intervalle mit Fehlern des jeweiligen Horizonts. Dafür zählen auswertbare Fehler der letzten 14 Tage; Fehler von vor 7 Tagen erhalten halb so viel Gewicht wie aktuelle.
- Das historische Band für Score und Alerts behält ein konservatives Intervall von 99 %. Der Forecast zeigt getrennt davon ein nominales Abdeckungsziel von 95 %.
warming_upbleibt aktiv, bis mindestens 21 Tage, drei vollständige Zyklen und 70 % Abdeckung vorliegen.
Die Abdeckung berücksichtigt das kanonische Erfassungsintervall jeder Metrik. ICM-Fehlerraten werden beispielsweise alle 15 Minuten erfasst, obwohl die Engine interne Fünf-Minuten-Buckets verwendet; diese regulären Messwerte gelten nicht als fehlende Daten.
SPOT fragt die 42 Tage in Sieben-Tage-Fragmenten ab und teilt zu große oder
abgelaufene Abfragen bis auf sechs Stunden. Ein Modell wird nur bei einem
vollständigen Fenster veröffentlicht; ein fehlgeschlagenes Fragment setzt die
Variante auf training_error und erzeugt kein Teilmodell.
Jede Ansicht verwendet exakt SAP-Target, metricId, Parameter und kanonischen
Serienschlüssel. Der sichtbare Name verbindet keine Modelle. Ein Score gehört
nur zu seinem Timestamp; SPOT verwendet keinen älteren Score für einen neueren
Wert.
On-prem werden Modelle, Serien und Caches durch readScopeId + targetId
getrennt; jede Suche filtert die exakte source_id. Zwei SAP im selben
Namespace trainieren niemals ein gemeinsames Modell. Scope-ID und sichtbarer
Alias gehören nicht zur SAP-Identität.
Externes Elasticsearch on-prem
In einer external Suite veröffentlicht der Connector ausschließlich Telemetrie. Das SPOT-Backend entdeckt die Targets über ihre Read Scopes und führt, nachdem ein Administrator ML aktiviert hat, automatisch Folgendes aus:
- Inferenz alle fünf Minuten;
- Forecast-Aktualisierung jede Stunde;
- tägliches Training.
Vor der ersten Aktivierung verlangt **Configuration > Elasticsearch read scopes
Run ML preflight** die exakten Namen für
metricsundlogsals native Data Streams und prüft IANA-Zeitzone pro Target sowie Berechtigungen einer getrennten Writer-Credential. Zusätzlich fragt er dieselben kanonischen Serien ab, die der Worker trainiert: Mindestens eine muss innerhalb des 42-Tage-Fensters 21 beobachtete Tage, drei Wochenzyklen und 70 % Abdeckung erreichen. Andere schema-v2-Dokumente ersetzen diesen Nachweis nicht. Der Test arbeitet schreibgeschützt und verändert das externe Elasticsearch nicht. Schlägt er fehl, speichert SPOT den aktivierten Zustand nicht und startet keine Worker.
Die vier Ziele für Modelle, Baselines, Forecasts und Anomalien sind von SPOT
verwaltete abgeleitete Daten. Sie sind keine Telemetrie-Data-Streams und
autorisieren SPOT nicht, metrics, logs, Templates oder ILM zu erstellen
oder zu ändern. Ein Betriebsfehler erscheint als preflight, readiness,
writer, storage oder runtime, ohne Endpunkte, Credentials oder rohe
Fehler anzuzeigen.
Score interpretieren
Der Score von 0–100 kombiniert:
- Seltenheit: kalibrierte Wahrscheinlichkeit einer gleich großen oder größeren Abweichung.
- Auswirkung: Abstand über einem materiellen Minimum für Einheit und normale Skalierung.
- Richtung: Bei Latenz, Auslastung, Fehlern und Alter sind meist Anstiege schädlich; bei freiem Platz, Verfügbarkeit und gesunden Quoten Abfälle.
- Persistenz: Fenster mit 3, 6 und 12 unterschiedlichen Beobachtungen ergänzen den aktuellen Punkt.
Eine Verbesserung kann keinen ML-Vorfall öffnen. Niedrigere Latenz oder mehr freier Platz können das Band verlassen, ohne eine Verschlechterung zu sein.
Auf der kalibrierten Skala entspricht 75 ungefähr einer seltenen und 90
einer deutlich außergewöhnlicheren Abweichung, sofern die Auswirkung materiell
ist. Effektive Schwellwerte bleiben mit 0 ≤ warning < critical ≤ 100
konfigurierbar.
Ausschläge, Persistenz und Alarme
Ein einzelner Punkt kann als sichtbare Evidenz bestehen bleiben, ohne einen Vorfall zu öffnen. Das Standardprofil verlangt zwei unterschiedliche anomale Beobachtungen über mindestens fünf Minuten. Nur ein außergewöhnliches Score-100-Ereignis mit extremer Auswirkung darf mit einem Punkt öffnen.
Eine erneute Auswertung desselben Buckets erhöht die Persistenz nicht und
erzeugt keinen weiteren Vorfall. Zwei unterschiedliche gesunde Beobachtungen
lösen die ML-Bedingung auf. warming_up, no_recent_data,
insufficient_history, insufficient_coverage, training_error,
no_matching_series und unavailable lösen ML nicht aus.
Bei der Aktivierung von adaptive-robust-v4 behält jede Serie ihre historischen
v3-Evidenzen, Scores und Anomalien strikt vor ihrem eigenen Umstellungszeitpunkt.
Ab diesem Zeitpunkt beginnt die v4-Evidenz: Ein Zeitstempel kombiniert nie
beide Generationen. Frühere Alerts werden nicht neu berechnet. Prüfe
Modellstatus und Generation der jeweiligen Serie, wenn du Punkte vor und nach
der Umstellung liest.
Forecast und Erklärung
Der Forecast umfasst 24 Stunden mit ausgewähltem Modell und kalibriertem Band. Now trennt Historie und schattierte Zukunft. Neue Messwerte fließen in den stündlichen Forecast ein. Die Modellauswahl je Horizont ändert sich erst nach dem nächsten täglichen Training. Trifft ein abgeschlossener Bucket verspätet ein oder wird sein Wert korrigiert, berücksichtigt ihn der nächste stündliche Forecast. Diese Aktualisierung ändert weder die tägliche Modellauswahl noch frühere Alerts. Die Genauigkeit des zentralen Werts und die Intervallabdeckung sind getrennte Maße: Eine Verbesserung des einen garantiert keine Verbesserung des anderen. So kann die Prognose einem aktuellen Niveau folgen, wenn die Evidenz es stützt; auch eine flache Linie kann richtig sein. Eine Verbesserung bei Speicher gilt nicht automatisch für jede Metrik.
Zeigen Sie auf einen Zeitpunkt, um alle sichtbaren Serien in einer kompakten
Karte zu vergleichen. Historisch erscheinen die Istwerte; künftige Werte sind
als Forecast gekennzeichnet und keine Messungen. Fehlende Messwerte bleiben
erkennbar. Zeigen Sie auf einen ML-Marker oder einen Forecast, um daneben den
Kontext dieser Serie zu sehen: Zentralwert, Bereich sowie Score oder
Kalibrierungsstatus. Die Karte wechselt auf die Seite mit Platz oder wird auf
schmalen Bildschirmen untereinander angeordnet. Mit View details öffnen Sie
die vollständige Erklärung dieses Punkts und schließen sie mit Escape. Ein
ML-Marker lässt sich auch per Klick oder Tastatur aktivieren. Im Detail stehen
Grenzen, Modelltyp und -generation, Status und verfügbare Evidenz, darunter der
Model confidence index (zum Beispiel 91 / 100), der keine
Wahrscheinlichkeit ist. Dies funktioniert auch in der erweiterten Grafik.
Lange Listen lassen sich im Fenster scrollen. Eine Lücke übernimmt keinen Wert
einer anderen Serie oder eines früheren Zeitpunkts.
Jeder zukünftige Messpunkt erscheint nur nahe seinem eigenen Zeitstempel,
entsprechend der beobachteten Kadenz dieser Serie. Ein einzelner Forecast wird
nicht über eine Lücke fortgesetzt. Historisch bezeichnet Sampling coverage
(Data coverage) den Anteil eingetroffener erwarteter Messwerte.
Validation coverage ist der Anteil der Validierungsbeobachtungen innerhalb
des kalibrierten Bandes. Beide Werte gehören stets zur gezeigten Serie.
Ein gemessener ML score 0 oder Validation coverage 0 % ist gültige
Evidenz für genau diese Serie und diesen Zeitstempel. Fehlt das Feld, liegt
dafür keine Evidenz vor. Ein fehlendes Feld bedeutet nicht null.
Für jeden zukünftigen Punkt ist Nominal coverage das Forecast-Ziel (95 %),
kein beobachtetes Ergebnis und nicht die Abdeckung des historischen
Alert-Intervalls (99 %). Validation coverage misst den Anteil tatsächlich
ausgegebener v4-Forecast-Intervalle, die nach Ablauf ihres Horizonts den
beobachteten Wert enthielten. Sie erscheint nur, wenn ausgegebene und
auswertbare Evidenz vorliegt; gemessene 0 % sind gültig,
ein fehlendes Feld bedeutet nicht null. Calibration samples zählt
auswertbare frühere Prognosefehler, mit denen das Band geschätzt wird. Es ist
nicht die Zahl der ausgegebenen Intervalle, mit denen Validation coverage
berechnet wird. Calibration status ist ready bei
ausreichender Evidenz, limited bei geringer Evidenz oder insufficient,
wenn keine verlässliche Schätzung möglich ist. Das nominale Ziel ist nicht als
erreichte Abdeckung zu lesen. Auch nach den mindestens 21 Tagen Training
können für einzelne Horizonte noch zu wenige abgeschlossene Prognosefehler
vorliegen; prüfe Stichprobenzahl und Kalibrierungsstatus je Horizont. Das
95-%-Ziel ist keine garantierte Abdeckung. Model confidence index ist eine Skala von 0
bis 100, keine kalibrierte Wahrscheinlichkeit und keine Garantie dafür, dass
ein künftiger Wert innerhalb des Bandes liegt.
Für die Kalibrierung des operativen Bands vergleicht SPOT den zentralen Wert
tatsächlich ausgegebener Prognosen mit späteren abgeschlossenen Messwerten
derselben Serie und desselben Horizonts. Ein älteres Intervall ohne ausgegebenen
zentralen Wert liefert keinen messbaren Fehler; SPOT rekonstruiert ihn nicht.
Daher kann ein Forecast sichtbar sein, während Calibration status noch
insufficient ist: Eine lange Datenhistorie ersetzt keine ausgegebenen,
inzwischen auswertbaren Prognosen.
Baseline und Forecast haben unabhängige Zustände. Ein verfügbarer Forecast verdeckt keine Baseline, die noch aufwärmt oder zu wenig Abdeckung hat. Meldungen unterscheiden fehlende aktuelle Daten, unzureichende Historie oder Abdeckung, Trainingsfehler, nicht passende Serien und Nichtverfügbarkeit. Bereite Forecasts werden einmal pro Stunde aktualisiert.
Bleibt warming_up länger als einen Trainingszyklus unverändert, obwohl das
Diagramm weiterhin aktuelle Daten erhält, prüfe Alerts → ML coverage. Der
Status muss unzureichende Abdeckung oder Historie benennen; ein dauerhafter
Verarbeitungsfehler erfordert eine Prüfung durch den SPOT-Administrator.
Diagramme und Alert Center erklären:
- Istwert, typischen Wert und erwartetes Band;
- absolute und relative Änderung;
- Point Score und Multi-Bucket Score;
- Seltenheit, Auswirkung, Richtung und Persistenz;
- Modell, effektive Samples, Abdeckung und Score-Gründe.
Prüfe Alerts → ML coverage auf Version, Generation, Zeitzone, Status, Abdeckung, Kalibrierung und letzte Inferenz, bevor eine ML-Regel aktiviert wird. Forecast bleibt visuelle Evidenz und öffnet keine prädiktiven Alarme.
Evidenz-Tooltips bleiben im Fenster und können bei langen Erklärungen gescrollt werden; zeigen Sie nach Größenänderung oder Scrollen erneut auf einen Punkt. In Analysis bleiben beide ML-Bereichsregler per Tastatur bedienbar, auch wenn ihre Grenzen übereinstimmen.