Panoramica

Introduzione

Le previsioni e il rilevamento di anomalie in miliardi di serie temporali sono ad alta intensità di calcolo. La maggior parte dei sistemi esistenti esegue previsioni e anomalie il rilevamento come job batch (ad esempio, pipeline di rischio, previsione del traffico, pianificazione della domanda e così via). Questo limita notevolmente il tipo di analisi che può funzionare online, ad esempio decidendo se inviare un avviso in base a un aumento improvviso o diminuisci in un insieme di dimensioni degli eventi.

Gli obiettivi principali dell'API Timeseries Insights sono:

  • Scala fino a miliardi di serie temporali create dinamicamente da dati non elaborati e relative proprietà, in base ai parametri di ricerca.
  • Fornisce risultati di previsioni e rilevamento di anomalie in tempo reale. Vale a dire che in pochi secondi, rilevare tendenze e stagionalità in tutte le serie temporali e decidi se le sezioni aumentano o diminuiscono inaspettatamente.

Funzionalità dell'API

  • Gestisci i set di dati
    • Indicizza e carica un set di dati composto da più origini dati archiviate su di archiviazione ideale in Cloud Storage. Consente l'aggiunta di nuovi eventi in modalità streaming.
    • Esegui l'unload di un set di dati non più necessario.
    • Chiedi lo stato di elaborazione di un set di dati.
  • Esegui query su set di dati
    • Recupera le serie temporali corrispondenti ai valori specificati delle proprietà. Le serie temporali viene eseguita fino a un determinato orizzonte temporale. L'ora viene valutata anche la presenza di anomalie.
    • Rileva automaticamente combinazioni di valori di proprietà per le anomalie.
  • Aggiorna set di dati
    • Importa i nuovi eventi che si sono verificati di recente e incorporali nell'indice quasi in tempo reale (da secondi a minuti di ritardo).

Ripristino di emergenza

L'API Timeseries Insights non funge da backup per Cloud Storage o restituire aggiornamenti di flussi di dati non elaborati. I clienti sono responsabile dell'archiviazione e del backup dei dati separatamente.

Dopo un'interruzione a livello di regione, il servizio esegue il recupero ottimale. Metadati (informazioni su set di dati e stato operativo) e streaming dell'utente i dati aggiornati entro 24 ore dall'inizio dell'interruzione potrebbero non da recuperare.

Durante il ripristino, le query e gli aggiornamenti in streaming ai set di dati potrebbero non disponibili.

Dati di input

È comune che i dati numerici e categorici vengano raccolti nel tempo. Per ad esempio, la figura seguente mostra l'utilizzo della CPU, la memoria utilizzata e lo stato di un singolo job in esecuzione in un data center per ogni minuto in un determinato periodo di tempo. L'utilizzo della CPU e la memoria sono valori numerici e lo stato è un valore categorico.

Timeseries

Evento

L'API Timeseries Insights utilizza gli eventi come immissione dati di base. Ogni evento ha un timestamp e una raccolta di dimensioni, ovvero coppie chiave-valore in cui la chiave è il nome della dimensione. Questa semplice rappresentazione ci consente di gestire i dati miliardi di dollari. Ad esempio data center, utente, nomi dei job e vengono inclusi i numeri che rappresentano interamente un singolo evento. La figura sopra mostra una serie di eventi registrati per un singolo job che illustra un sottoinsieme di dimensioni.

{"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"}

DataSet

Un DataSet è una raccolta di eventi. Le query vengono eseguite all'interno dello stesso set di dati. Ciascuna può avere più set di dati.

Un set di dati viene creato a partire da dati in batch e in flussi. Letture di build dei dati in batch da più URI Cloud Storage come origini dati. Al termine della creazione batch, è possibile aggiornare il set di dati con flussi di dati. Utilizzo della build batch per dati storici dati, il sistema può evitare problemi di avvio a freddo.

Un set di dati deve essere creato o indicizzato prima di poter eseguire query o aggiornarlo. L'indicizzazione inizia quando viene creato il set di dati e in genere richiede alcuni minuti ore da completare, a seconda della quantità di dati. In particolare, le origini dati vengono scansionate una volta durante l'indicizzazione iniziale. Se i contenuti gli URI Cloud Storage cambiano dopo il completamento dell'indicizzazione iniziale, non nuova scansione. Utilizza gli aggiornamenti in modalità flusso per dati aggiuntivi. Aggiornamenti in streaming vengono indicizzati in modo continuo quasi in tempo reale.

Rilevamento di serie temporali e anomalie

Sezioni

Per l'API Timeseries Insights, una sezione è una raccolta di eventi con una determinata combinazione di valori di dimensione. Me sono interessati alla misurazione degli eventi che rientrano in queste sezioni nel tempo.

Per una determinata sezione, gli eventi vengono aggregati in valori numerici per risoluzione degli intervalli di tempo specificata dall'utente, che è la serie temporale da rilevare le anomalie in uso. La figura precedente illustra le diverse scelte delle sezioni ottenute da diverse combinazioni di "utente", "job" e "data_center" dimensioni.

Serie temporale e anomalie

Un'anomalia si verifica per una determinata sezione se il valore numerico dell'intervallo di tempo di interesse è nettamente diverso dai valori del passato. La la figura sopra illustra una serie temporale basata sulle temperature misurate attraverso del mondo in 10 anni. Supponiamo di voler sapere se nell'ultimo mese Il 2015 è un'anomalia. Una query al sistema specifica l'ora di interesse, detectionTime, da essere "01/12/2015" e granularity in modo che sia "1 mese". La serie temporale recuperata prima che detectionTime sia partizionato in una precedente di addestramento seguito da un periodo di holdout. Il sistema utilizza i dati provenienti il periodo di addestramento per addestrare un modello e utilizza il periodo di holdout per verificare il modello può prevedere in modo affidabile i valori successivi. Per questo esempio, l'holdout è di 1 anno. L'immagine mostra i dati effettivi e i valori previsti da del modello con i limiti superiore e inferiore. La temperatura per il 2015/12 è contrassegnata un'anomalia perché il valore effettivo non rientra nei limiti previsti.

Passaggi successivi