Übersicht

Einleitung

Prognose und Anomalieerkennung über Milliarden von Zeitreihen rechenintensiv ist. Die meisten vorhandenen Systeme führen Prognosen und Anomalien aus Erkennung als Batchjobs (z. B. Risikopipelines, Trafficprognosen, Nachfrageplanung usw. Dies schränkt die Art der Analyse, die Sie z. B. die Entscheidung, ob eine Benachrichtigung aufgrund eines plötzlichen Anstiegs oder bei einer Reihe von Ereignisdimensionen an.

Die Hauptziele der Timeseries Insights API sind:

  • Auf Milliarden von Zeitreihen skalieren, die dynamisch aus Rohrohdaten erstellt werden und ihre Eigenschaften auf Basis von Suchparametern festlegen.
  • Bereitstellung von Echtzeitprognosen und Ergebnissen der Anomalieerkennung. Das heißt, innerhalb weniger Sekunden lassen sich Trends und saisonale Schwankungen in allen Zeitreihen erkennen und feststellen, ob es bei einzelnen Segmenten zu unerwarteten Spitzen oder Rückgängen kommt.

API-Funktionalität

  • Datasets verwalten
    • Indexieren und Laden eines Datasets, das aus mehreren Datenquellen besteht, die in Cloud Storage Erlauben Sie das Anhängen neuer Ereignisse per Streaming.
    • Entladen Sie ein nicht mehr benötigtes Dataset.
    • Nach dem Verarbeitungsstatus eines Datasets fragen.
  • Datasets abfragen
    • Ruft die Zeitreihe ab, die den angegebenen Attributwerten entspricht. Die Zeitreihe bis zu einem bestimmten Zeithorizont prognostiziert. Die Zeitreihe wird auch auf Anomalien geprüft.
    • Kombinationen von Property-Werten werden automatisch auf Anomalien geprüft.
  • Datasets aktualisieren
    • Neue Ereignisse, die vor Kurzem stattgefunden haben, werden nahezu in Echtzeit (mit einer Verzögerung von Sekunden bis Minuten) aufgenommen und in den Index eingefügt.

Notfallwiederherstellung

Die Timeseries Insights API dient nicht als Sicherung für Cloud Storage verwenden oder Streaming-Rohdatenaktualisierungen zurückgeben. Kunden sind Daten separat zu speichern und zu sichern.

Nach einem regionalen Ausfall führt der Dienst eine Wiederherstellung nach dem Best-Effort-Prinzip durch. Metadaten (Informationen zum Datensatz und Betriebsstatus) und gestreamter Nutzer Daten, die innerhalb von 24 Stunden vor Beginn des Ausfalls aktualisiert wurden, wiederhergestellt werden.

Während der Wiederherstellung können Abfragen und Streaming-Aktualisierungen von Datasets verfügbar sein.

Eingabedaten

Es ist üblich, dass numerische und kategorische Daten im Laufe der Zeit erfasst werden. Für Beispiel: Die folgende Abbildung zeigt die CPU-Auslastung, die Speichernutzung und den Status für jede Minute über einen bestimmten Zeitraum einen einzelnen laufenden Job in einem Rechenzentrum. Die CPU- und Arbeitsspeichernutzung sind numerische Werte und der Status ist kategorialen Wert.

Zeitachse

Ereignis

Die Timeseries Insights API verwendet Ereignisse als grundlegende Dateneingabe. Jedes Ereignis hat ein Zeitstempel und eine Sammlung von Dimensionen, d. h. Schlüssel/Wert-Paare, ist der Name der Dimension. Diese einfache Darstellung ermöglicht uns die Verarbeitung von Daten in von Billionen. Zum Beispiel: Rechenzentrum, Nutzer, Jobbezeichnungen und Aufgaben Zahlen enthalten, um ein einzelnes Ereignis vollständig darzustellen. Die Abbildung oben zeigt Eine Reihe von Ereignissen, die für einen einzelnen Job aufgezeichnet wurden, die eine Teilmenge von Dimensionen illustriert.

{"name":"user","stringVal":"user_64194"},
{"name":"job","stringVal":"job_45835"},
{"name":"data_center","stringVal":"data_center_30389"},
{"name":"task_num","longVal":19},
{"name":"cpu","doubleVal":3840787.5207877564},
{"name":"ram","doubleVal":1067.01},
{"name":"state","stringVal":"idle"}

Datenpool

Ein Datensatz ist eine Sammlung von Ereignissen. Abfragen werden innerhalb desselben Datasets ausgeführt. Jedes Projekt mehrere Datasets haben kann.

Ein Dataset wird aus Batch- und Streamingdaten erstellt. Batch-Daten-Build-Lesevorgänge aus mehreren Cloud Storage-URIs als Datenquellen erstellen. Nach Abschluss des Batch-Builds kann das Dataset mit Streamingdaten aktualisiert werden. Batch-Build für Verlaufszwecke verwenden kann das System Kaltstartprobleme vermeiden.

Ein Dataset muss erstellt oder indexiert werden, bevor es abgefragt oder aktualisiert werden kann. Die Indexierung beginnt mit dem Erstellen des Datasets und dauert in der Regel einige Minuten Stunden ausgeführt werden, je nach Datenmenge. Genauer gesagt: Der Parameter Datenquellen werden bei der ersten Indexierung einmal gescannt. Wenn der Inhalt der ändern sich die Cloud Storage-URIs nach der ersten Indexierung. noch einmal gescannt. Verwenden Sie Streaming-Updates für zusätzliche Daten. Streaming-Updates und werden nahezu in Echtzeit kontinuierlich indexiert.

Erkennung von Zeitreihen und Anomalien

Slices

Für die Timeseries Insights API: ein Slice ist eine Sammlung von Ereignissen mit einer bestimmten Kombination von Dimensionswerten. Mi. an einer Messung der Ereignisse interessiert sind, die im Laufe der Zeit in diese Segmente fallen.

Für ein bestimmtes Segment werden die Ereignisse in numerische Werte pro benutzerdefinierte Auflösung von Zeitintervallen, d. h. die zu erkennenden Zeitreihen. Anomalien. Die obige Abbildung zeigt die verschiedenen Auswahlmöglichkeiten für die Slices. aus verschiedenen Kombinationen von „user“, „job“ und „data_center“ Dimensionen.

Zeitreihen und Anomalien

Bei einem bestimmten Segment tritt eine Anomalie auf, wenn der numerische Wert Intervall von Interesse unterscheidet sich erheblich von den Werten in der Vergangenheit. Die Die Abbildung oben zeigt eine Zeitreihe auf der Grundlage von Temperaturen, die im seit über 10 Jahren. Angenommen, wir möchten wissen, ob der letzte Monat 2015 ist eine Anomalie. Eine Abfrage an das System gibt den gewünschten Zeitpunkt an, detectionTime, um „01.12.2015“ zu sein und granularity auf „1 Monat“. Die abgerufene Zeitreihe vor dem detectionTime wird in einen früheren Trainingszeitraum und einen Hold-out-Zeitraum unterteilt. Das System verwendet Daten aus Trainingszeitraum, um ein Modell zu trainieren, und überprüft anhand des Holdout-Zeitraums, kann das Modell die nächsten Werte zuverlässig vorhersagen. In diesem Beispiel hat der Holdout Zeitraum beträgt 1 Jahr. Die Abbildung zeigt die tatsächlichen Daten und vorhergesagten Werte aus das Modell mit Ober- und Untergrenzen. Die Temperatur für 2015/12 ist als Anomalie gekennzeichnet, da der tatsächliche Wert außerhalb der vorhergesagten Grenzen liegt.

Nächste Schritte