
BigQuery è tra i data warehouse cloud più performanti per l'analisi. Grafana è una piattaforma aperta per analytics e monitoring di alto livello. Unire la potenza di entrambi è una scelta naturale: noi l'abbiamo fatto.
Difficile immaginare oggi un'azienda che non usi Grafana per visualizzare i propri dati time series, che sia per monitoring, alerting, analisi o per tutte queste ragioni insieme. Grafana supporta numerose sorgenti dati time series molto diffuse, come InfluxDB, Graphite, Elasticsearch e molte altre.
Google BigQuery, dal canto suo, è un database cloud molto apprezzato nell'ambito della data analytics, grazie a una capacità senza pari di eseguire query in tempi rapidissimi su set di dati di enormi dimensioni.
Per fortuna, Grafana mette a disposizione un'interfaccia documentata per sviluppare nuovi plugin di sorgenti dati. Il mio collega Aviv Laufer, del team solutions di DoiT International, è riuscito a sviluppare proprio il plugin per Google BigQuery.
I casi d'uso sono pressoché infiniti: dashboard per analizzare log, dati di fatturazione, metriche di vendita, traffico, performance delle campagne di digital marketing e molto altro ancora.
Per illustrare il nuovo plugin ho scelto i dati di fatturazione di Google Cloud, un esempio in cui può riconoscersi chiunque usi questa piattaforma. In breve: si può configurare Google Cloud per esportare in BigQuery informazioni di fatturazione dettagliate [ 1]. Esportare i dati di fatturazione in BigQuery permette di tenere sotto controllo i costi dei servizi Google Cloud con un livello di dettaglio molto granulare.
Dashboard Grafana che visualizza i dati di Google Cloud Billing provenienti da BigQuery
Dato che il plugin BigQuery non è ancora un plugin "ufficialmente" supportato da Grafana, va installato manualmente dal repository git del plugin [ 2].
Nella maggior parte dei casi è sufficiente eseguire un singolo comando sul proprio server Grafana e poi riavviarlo. Le istruzioni complete sono nella sezione di installazione del repository [ 3].
grafana-cli \--pluginUrl \https://github.com/doitintl/bigquery-grafana/archive/0.3.0.zip
\ plugins install doitintl-bigquery-datasourceUna volta installato, il plugin è pronto all'uso. Va autenticato con il proprio IAM di Google Cloud creando un service account e caricando la relativa chiave JSON.
Completata l'autenticazione, si può creare la prima dashboard. Il plugin permette di costruire la query in modo visuale, seguendo semplicemente la procedura guidata.
Si parte scegliendo il progetto Google Cloud dalla lista, quindi il dataset e il nome della tabella. Il plugin recupererà le colonne della tabella (insieme ai metadati che indicano, ad esempio, se è partizionata) in modo da poterle selezionare comodamente dai menu a tendina.
A questo punto basta selezionare il campo o i campi da visualizzare, comprese le aggregazioni necessarie, e voilà: i dati appaiono in un istante!
Configurazione della dashboard tramite la procedura guidata del plugin. Versione ad alta risoluzione disponibile qui.
Chi preferisce scrivere la query a mano può farlo cliccando sul pulsante "Edit SQL".
Modalità Edit SQL
Da notare come il plugin riconosca che si tratta di una tabella partizionata e includa automaticamente il filtro _PARTITIONTIME, così da analizzare solo i dati dell'intervallo temporale selezionato.
Ci auguriamo che il plugin BigQuery per Grafana vi sia utile quanto lo è per noi e siamo curiosi di scoprire come lo userete. Anche se siamo ancora agli inizi, seguiamo gli issue da vicino e ci impegniamo a rispondere prontamente a ogni richiesta [ 4].
Buona visualizzazione!
Volete altri articoli? Date un'occhiata al nostro blog, oppure seguite Vadim su Twitter.