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

Blog

Time Series Database per grandi volumi di dati: intervista con InfluxDB

Stefano Marfella

Stefano Marfella, 10 aprile 2020 | Time Series Database

Nell’era dell’Industria 4.0 le aziende si trovano a gestire enormi volumi di flussi di dati Time Series provenienti dai sensori IoT. Al fine di sfruttare questi dati e raccogliere informazioni preziose per le decisioni di business, per il miglioramento continuo, l’efficienza e l’ottimizzazione dei sistemi di produzione, un Time Series Database è la scelta più sensata da perseguire.

Scopri i vantaggi dei Time Series Database nel nostro ebook gratuito!

I Time Series Data rappresentano il consolidamento di metriche ed eventi raccolti nel corso del tempo in maniera costante. Può trattarsi di metriche del server, per il monitoraggio della performance delle applicazioni, dati sul network, dati dai sensori, eventi, click, transazioni in un mercato e molti altri tipi di analytics. Tutti i data point vengono tracciati su di un grafico in cui uno degli assi rappresentati è il tempo. È un tipo di dato, quello delle serie storiche, che trova applicazione in moltissimi tipi di industrie: quotidianamente assistiamo alla diffusione di sempre più sensori e sistemi che producono un costante flusso di dati.

Extra Red è l’unico Consulting Partner italiano di InfluxData, l’azienda che ha creato InfluxDB, un time series database destinato alle serie di dati storiche. Abbiamo parlato con Tim Hall, VP of Products di InfluxData, per porgli alcune domande sui database ad alta performabilità e sul futuro dei Time Series Data.

La promessa dell’Industria 4.0 si stai ormai realizzando davanti ai nostri occhi, ed Extra Red ha un ruolo fondamentale nel mercato italiano per aiutare le aziende a trarre vantaggio dalle nuove tecnologie, come InfluxDB, e ottenere profitti dalla trasformazione in atto nell’industria” - Tim Hall, VP of Products, InfluxData

Da quale necessità è nato InfluxDB e cosa lo rende diverso da altre soluzioni DB per i dati time-series?

InfluxDB viene spesso paragonato ad altri database di svariati tipi, ma quando si arriva a metterli a confronto emergono sempre delle chiare differenze. Prima di tutto, gli altri database richiedono un investimento significativo in termini di tempo e codice da sviluppare per ricreare le funzionalità che InfluxDB invece offre in modalità out-of-the-box. In particolare, stiamo parlando degli sviluppatori che dovranno scrivere righe e righe di codice per condividere i dati tra diversi cluster, aggregare ed eseguire il downsampling delle funzioni, il recupero dei dati, il lifecycle management e la loro sintesi. Dovranno poi creare una API per scrivere ed eseguire il querying del nuovo servizio, realizzare nuovi strumenti per la raccolta dati, introdurre un sistema di processing dei dati in real-time e scrivere il codice per il monitoraggio e i sistemi di alerting. Infine, dovranno creare un motore di data visualization per rappresentare i dati in forma grafica e renderli consultabili per l’utente finale.

Cosa rende InfluxDB unico?

InfluxDB viene usato dalle aziende per raccogliere, analizzare e sfruttare le loro serie storiche di dati. Gli utenti sono in grado di raccogliere qualsiasi tipo di dato, come metriche, eventi, log e tracce da qualsiasi fonte (sistemi, sensori, code, database e network), e archiviarli su di un server altamente performante che è capace di “digerire” milioni di data point al secondo. Gli utenti sono in grado di analizzare tutti i loro dati su tutti i loro data set. Attraverso il downsampling dei dati, gli utenti possono fornire analytics in real-time e di conseguenza trasmettere preziose insight di business. I dati archiviati su InfluxDB permettono agli sviluppatori di eseguire azioni sulla base di tali dati e impostare automatismi, sistemi di alerting e di rilevamento delle anomalie.

Abbiamo inoltre realizzato un tipo di compressione dei dati ottimizzata per le serie storiche, organizzandoli in modo da indicizzare i tag data per query più efficienti. A livello di database, c’erano molti tipi di ottimizzazioni che avremmo potuto prevedere. Ci siamo resi conto che la maggior parte degli utenti riscontra una serie di problemi comuni che hanno necessità di risolvere: come raccogliere i dati, come archiviarli, come processarli e monitorarli e, infine, come visualizzarli. Abbiamo scoperto di poter fornire una performance di gran lunga migliore rispetto ai database più generalizzati e allo stesso tempo ridurre lo sforzo da parte dello sviluppatore per trovare una soluzione a questi problemi.

Realizzare qualcosa che avrebbe potuto richiedere mesi per essere eseguita su Cassandra o MySQL può arrivare a richiedere al massimo un pomeriggio sulla nostra piattaforma. Focalizzandoci, sulle serie storiche di dati siamo stati in grado di risolvere i problemi degli sviluppatori e lasciare che si concentrino esclusivamente sulla creazione di codici che conferiscono valore aggiunto alla loro applicazione.

Abbiamo scoperto che una sola API comune permette alla comunità di InfluxDB di creare soluzioni con il nostro DB molto più facilmente. Abbiamo un line-protocol che rappresenta con facilità i time series data e InfluxDB 2.0 unifica una API HTTP-based per la scrittura e il querying, per i sistemi di alerting e molto altro ancora. Ciò significa che nel corso del tempo possiamo avere a disposizione dei componenti pre-costruiti, che noi chiamiamo template, utilizzabili per i casi più comuni e che funzionano efficacemente sulle nostre edizioni Cloud e open source. Esistono molti time series database che vengono utilizzati per diversi scopi: alcuni di questi sono soluzioni ormai affermate, altri sono progetti più recenti. In ogni caso, sono significativamente diversi da InfluxData che offre un’intera piattaforma, non soltanto un time series database.

Quanto è importante la filosofia open source per InfluxDB?

Crediamo nell’open source e ci impegniamo costantemente a partecipare e contribuire alla comunità open source in modo significativo. Abbiamo sviluppato una piattaforma interamente open source specificatamente per la misurazione di metriche ed eventi e abbiamo accolto i contributi dalla comunità nella forma di oltre 250 plugin di Telegraf e nel 2020 contiamo oltre 350 issue aperte dai membri della nostra community, oltre a 380 commit che sono stati completati. Ciò è molto significativo in quanto arricchisce la base del codice e lo rende robusto, grazie all’esperienza e ai contributi delle persone al di fuori di InfluxData. Abbiamo constatato che questo porta ad un software di più alta qualità, in quanto l’ampia varietà d’uso identifica rapidamente i difetti e quindi di eliminarli.

Perché i time series data stanno diventando sempre più importanti nell’ambito IT?

Le serie storiche di dati sono sempre state molto importanti nell’ambito IT, che per anni ha dovuto occuparsi del monitoraggio delle proprie infrastrutture. Quello che è cambiato è l’aumento significativo nel numero di oggetti che dobbiamo monitorare: macchine virtuali, container, orchestratori, microservizi sono solo alcuni degli esempi dell’aumento delle metriche che dobbiamo tenere sotto controllo per garantire la migliore esperienza utente possibile per i vostri clienti.

La buona notizia è che InfluxDB è un database high-performance realizzato per l’esigenza specifica delle serie storiche di dati, incluso il monitoraggio delle infrastrutture, le metriche delle applicazioni, i dati provenienti dai sensori IoT e le real-time analytics. Potete risparmiare spazio configurando InfluxDB in modo da conservare i dati solo per un limite definito di tempo, dopo il quali i dati non desiderati vengono eliminati automaticamente. Sebbene sia disponibile un’interfaccia utente nativa, gli sviluppatori possono facilmente creare le loro soluzioni di visualizzazione personalizzate o utilizzare altre tecnologie come dashboard o notebook di data science. Molte soluzioni richiedono un pesante sforzo ingegneristico per eguagliare le caratteristiche che sono invece native in un time series database, e richiedono spesso grandi quantità di hardware per supportarle.

Quali settori industriali traggono maggiore beneficio dall’analisi e dal monitoraggio delle serie storiche di dati?

Riteniamo che siano moltissimi i settori che possono trarre vantaggio dai dati time-stamped, tra cui: finanza, energie, telecomunicazioni, IT, retail, ecc. InfluxDB gode della fiducia di centinaia di aziende per moltissimi casi d’uso diversi, tra cui il monitoring per network e IoT, l’IoT industriale e il monitoraggio di infrastrutture e applicazioni.

Le aziende che vogliono adottare una soluzione DB performante per l’analisi dei dati prodotti dai propri macchinari possono rivolgersi ai Time Series Database, che sono ottimizzati precisamente per fornire una visione d’insieme dell’andamento dei sistemi focalizzando l’attenzione sul fattore tempo. Se vuoi approfondire l’argomento e scoprire tutti gli ambiti di applicazione dei Time Series DB, scarica l’ebook gratuito dedicato alle aziende: ti basta un clic qui sotto!

Extra Red Time Series Database

Lascia un commento