<img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1267344923293614&amp;ev=PageView&amp;noscript=1">

Time Series Database

Time Series Database: cosa sono e i vantaggi per le aziende

Cosa sono i Time Series Data?

1.Time Series Database cosa sono e i vantaggi per

Una Time Series rappresenta una sequenza di punti di dati ordinati nel tempo, dove ciascuno dei quali è in grado di immagazzinare un insieme di informazioni semplici o complesse, connesse a un momento storico. I dati di una Time Series possono essere connessi a qualsiasi evento, dispositivo e comportamento misurabile nel tempo. Le Time Series Data sono misurazioni raccolte e memorizzate e dunque monitorabili, analizzabili e aggregabili in tempo reale o tramite proiezioni nel passato. In questo tipo di dati, il tempo è una variabile indipendente (nel senso di non influenzato) rispetto al resto delle informazioni ed è associato al dato nel momento della sua creazione o quando lo stesso è aggiunto alla serie.

Per la sua natura, ogni Time Series può essere studiata per analizzare andamenti nel passato o per effettuare proiezioni sul futuro, permettendo valutazioni più generali che esulano dalla validazione di singoli dati. L'utilizzo delle Time Series è cresciuto esponzialmente nell'ultimo decennio, con applicazioni nei settori finanziari e gestionali e in generale nell'industria manifatturiera e IT di tutto il mondo. Ciò è stato possibile grazie ai grandi passi avanti compiuti, soprattutto tecnologici, relativamente alla gestione e memorizzazione delle Time Series, e all'abbattimento di molti limiti relativi al tempo di vita della serie, così come alla frequenza con cui i dati sono raccolti. Il tempo che intercorre tra due punti della stessa time series è chiamato periodo ed è spesso uguale alla frequenza con cui i dati sono raccolti, sebbene nelle time series si accetti l'assenza di uno o più punti di dato.

Oggi, il periodo e la frequenza delle Time Series possono andare da porzioni di secondo fino a minuti, giorni, mesi o anni, trovando sempre un supporto tecnologico in grado di gestirle e analizzarle in efficienza. Una Time Series può essere una metrica estratta dal comportamento computazionale di un server, espressione delle performance di un'applicazione, una collezione di dati network. Una Time Series può essere generata dai dati raccolti da un sensore o costruita da informazioni su click, eventi, comportanti di mercato e molti altri tipi di dati analitici.

Cos'è un Time Series Database?

2.Time Series Database cosa sono e i vantaggi per l’azienda

Un Time Series Database (TSDB) è un software implementato e ottimizzato per memorizzare e trattare Time Series Data, informazioni più o meno complesse time-stamped, ovvero associate a una data che identifica in maniera univoca un momento. E' dunque un database implementato per gestire metriche, eventi e misurazioni sempre proiettata nell'asse del tempo.

I primi Time Series Database di nuova generazione si sono focalizzati sulla ricerca e analisi di dati finanziari, al fine di individuare comportamenti ripetitivi e anticiparli. Dunque si sono evoluti per essere in grado di ospitare dati provenienti da sensori e macchinari industriali, estendendo anno dopo anno il campo di adozione e gli strumenti forniti per analizzare e trattare i dati, una volta immagazzinati.

In molti casi i database TSDB utilizzano algoritmi di compressione per garantire efficienza, anche negli scenari in cui la frequenza di raccolta dei dati è molto alta. Per incrementare le performance in entrambe le fasi di scrittura e lettura, i Time Series Database sono soliti distinguere in ogni dato memorizzato una porzione di informazione più statica, nel quale il dato assumere valori all'interno di un insieme ben delineato, e una seconda fetta di informazione totalmente dinamica, che inizializza i valori finali misurati. Ciò permette al database di separare gli indici che ne massimizzano le performance, dai dati veri e propri sui quali, a seconda del database, possono essere applicate operazioni di calcolo, interpolazione, compressione, filtraggio e analisi di ogni genere.

Con la diffusione sempre più energica dei database Time Series viene così superata la tradizionale suddivisione dei database, in relazionali e non relazionali. I concetti di tabelle interconnesse, chiavi, e documenti generalizzati multi informazione sono superati, con i riflettori e l'interesse indirizzato sul fattore tempo. Una opportunità in più per gestire una grande mole di dati in real-time e recuperarne informazioni significative per ogni business, con un approccio nuovo, efficiente, innovativo.

Come funziona un Workload in un Time Series Database?

3.Time Series Database cosa sono e i vantaggi per l’azienda

I Time Series Database hanno proprietà chiavi architetturali che li rendono molto diversi dagli altri database. I dati, associati a un timestamp sono memorizzati e compressi con logiche proprie di questo tipo di database e che ne permettono l'ingestione fino a frequenze di micro secondi. Anche il ciclo di vita del dato è differente. Nei database tradizionali il dato viene salvato all'interno di una tabella o di un oggetto indicizzato in maniera statica per un tempo indefinito. Nei Time Series Database invece ciascun punto, in relazione all'importanza delle informazioni contenute, ha assegnato un ciclo di vita al termine del quale il dato viene eliminato, garantendo che solo i dati utili per il business siano conservati in sistemi sempre snelli e ottimizzati.

Le operazioni di aggiornamento su dati già memorizzati sono scarsamente utilizzate, talvolta nemmeno implementate, essendo l'interesse spostatosi dal singolo dato alla sequenza di molteplici dati collocati nel tempo passato, presente o futuro.
Uno dei punti di forza dei Time Series Database è legato alla sua capacità di aggregare, filtrare e trattare i Time Series Data, in efficienza ed affidabilità. Stabilire l'andamento delle vendite o engagement del cliente verso l'azienda, produrre le curve di consumo di un macchinario in industria, determinare il livello di inquinamento in una zona altamente trafficata e le cause dello stesso, monitorare l'utilizzo delle risorse della rete aziendale o lo stato di mantenimento di un monumento millenario, stabilire la percentuale di incremento degli accessi su un portale in relazione allo stesso periodo nell'anno precedente e nel triennio passato, sono solo alcuni esempi di quanto sia relativamente facile tratte informazioni analitiche da dati memorizzati in un Time Series Database. Alcuni dei TSDB iniziano inoltre ad affrontare anche sfide più strettamente legati a flussi di caratteri. Tipicamente le Time Series Data trattati dai database TSDB sono stati relativi a valori interi, decimali e in generali, valori numerici.

Ridefinendo i database al fine di essere in grado di trattare anche log e stream di stringhe in maniera efficiente, si aprono nuovi scenari di utilizzo ancora non pienamente decifrabili.

Come avviene la Data Visualization nei Time Series DB?

4.Time Series Database cosa sono e i vantaggi per l’azienda

Le informazioni salvate all'interno di un Time Series Database possono essere facilmente visualizzate su grafici. Disporre in ciascuno dato memorizzato sul database di un campo temporale ordinato, sin dalla prima diffusione delle Time Serie ha portato al proliferare di dashboard e metriche real-time in grado di eseguire anche sintesi e aggregazioni dei dati memorizzati nel passato.

Oggi giorno i database Time Series più noti dispongono di una propria interfaccia grafica che sfrutta i linguaggi nativi per eseguire query continue e visualizzare in maniera efficiente tutte le informazioni presenti; a queste si accostano molteplici open-source visualization tool come Grafana ma non solo, in grado di agganciarsi alle sorgenti dati sui database, mantenendo una user experience amichevole. Poter visualizzare i dati su grafici dinamici permette di aumentare la consapevolezza dell'utilizzatore, che sia relativamente a un risorsa, asset, comportamento da monitorare o relativa a logiche di business e informazioni utili che possano indirizzare una scelta o dare risposte sulla bontà di un investimento. Dashboard, alert basati su soglie o su curve di andamento, contatori e sistemi grafici predittivi sono sempre più integrati con le serie di dati nel tempo.

In quali casi è fondamentale l'uso di un TSDB?

5.Time Series Database cosa sono e i vantaggi per l’azienda

Sebbene l'utilizzo dei Time Series Database sia in costante crescita, riscontrando un'adozione che va dalle aziende IT più tecnologiche e all'avanguardia fino alle piccole industrie familiari, in molti Data scientist riconoscono che i TSDB nei campi Internet of Think (IoT) e DevOps iniziano ad essere un asset comunemente apprezzato e per molti versi divenuto indispensabile. Le fabbriche più lungimiranti hanno ormai da anni iniziato ad investire su macchinari intelligenti, dotati di sensori, in grado di connettersi ad internet e ancor più importante di auto-generare informazioni sullo stato dell'hardware e dei suoi consumi. Soluzioni proprietarie implementate dai produttori di macchinari o da investitori lungimiranti e altre piattaforme integrabili con dispositivi terzi, con al centro i Time Series Database sono sempre più diffuse grazie alla capacità di dare un valore ai dati generati nelle filiere di produzione rimasti per troppo tempi ignorati, mal analizzati, minimamente sfruttati. Nel campo IoT e dell'industria i dati generati da sensori, dispositivi e macchinari più o meno complessi possono essere raccolti all'interno di un database Time Series centralizzato, visualizzati medianti dashboard e analizzati tramite l'utilizzo di applicativi e software dedicati. In egual modo la metodologia DevOps sta traendo molteplici benefici dall'utilizzo di TSDB in particolare negli aspetti più strettamente legati alla raccolta e condivisione di informazioni e alla definizione di tool condivisi tra developer (dev) e sistemisti (ops) che facilitino le operazioni di troubleshooting di problemi e il monitoring delle risorse già in essere. I Time Series Database sono già molto utilizzati infatti per raccogliere dati real-time relativi alle risorse computazionali utilizzate nel cloud, alle performance e stabilità degli apparati di networking fino ai valori caratterizzanti database e applicativi in esecuzione.

Quali sono i più famosi TSDB e quali caratteristiche hanno?

6.Time Series Database cosa sono e i vantaggi per l’azienda

Tra i tanti Time Series Database sul mercato, ve ne sono sicuramente alcuni che più di altri si stanno affermando grazie a migliori caratteristiche, performance e supporto. InfluxDB è sicuramente il database TSDB più famoso, sia in termini di diffusione che di community. Creato nel 2013, è un prodotto Open Source in grado di garantire stabilità e prestazioni su tutti i più noti sistemi operativi, essendo ottimizzato per ingerire dati in quantità elevate anche se provenienti da numerose sorgenti. Il database è gestito con un linguaggio NoSQL, garantendo strutture dati dinamiche ed elastiche. Uno dei punti forti di InfluxDB è la facilità di installazione e utilizzo, una ottima documentazione tecnica online e un supporto clienti affidabile e altamente reattivo.

InfluxDB è il software core del TICK stack, un ecosistema di applicazioni che include Kapacitor, un alert e data downsampling engine, Chronograf una interfaccia web utilizzabile dagli admin dello stack e al contempo anche da tutti gli utenti della piattaforma per accedere a dashboard e molto altro, e Telegraf, il client con diverse centinaia di plugin in grado di raccogliere dati da un numero sempre crescente di sorgenti e inviarli al database. Uno dei punti di forza di InfluxDB da non trascurare sono le API. Ogni componente dello stack, incluso il database, espongono REST API, tramite cui interagire con essi, facilitando integrazioni e processi di automazione delle operazioni più ripetitive di configurazione e installazione oltre a quelle di lettura e scrittura di dati, in un contesto di utilizzo giornaliero.

Altri database Time Series in commercio sono TimescaleDB, OpenTSDB e Graphite. TimescaleDB è collegato a PostgresSQL in quanto ridefinisce il più famoso database relazionale in ottica time-stamped data. Il database fornisce supporto a diversi linguaggi programmazione come Java e Python permettendo agli applicativi connessioni al database tramite librerie apposite. OpenTSDB è stato uno dei primi database che ha provato a soddisfare la necessità di memorizzare Series Data riferenti grandi quantità di dati. Oggi supporta versioni di database clusterizzati, che permettono l'ingestione e la gestione dei dati in maniera distribuita. Graphite infine è un potente sistema di monitoring in grado di memorizzare Time Series Data e visualizzarli su richiesta tramite una propria interfaccia web.