
BigQuery figure parmi les data warehouses cloud les plus performants pour l'analytique. Grafana est une plateforme ouverte dédiée à l'analyse et au monitoring. Quoi de plus naturel que de combiner la puissance des deux ? C'est exactement ce que nous nous sommes dit !
Difficile d'imaginer une entreprise qui n'utilise pas Grafana pour visualiser ses séries temporelles, que ce soit pour le monitoring, les alertes, l'analyse, ou tout cela à la fois. Grafana prend en charge de nombreuses sources de séries temporelles populaires comme InfluxDB, Graphite, Elasticsearch et bien d'autres.
Google BigQuery est une base de données cloud très prisée pour l'analyse de données, grâce à sa capacité inégalée à exécuter des requêtes à grande vitesse sur d'immenses volumes de données.
Heureusement, Grafana propose une interface documentée pour créer de nouveaux plugins de sources de données. Mon collègue Aviv Laufer, de l'équipe Solutions de DoiT International, a su développer le plugin de source de données pour Google BigQuery.
Les applications sont quasi infinies : dashboards d'analyse de logs, données de facturation, indicateurs de ventes, analyse de trafic, suivi de campagnes marketing digitales ou tout autre cas d'usage.
Pour illustrer ce nouveau plugin, j'ai retenu les données de facturation Google Cloud, un sujet qui parlera à quiconque utilise Google Cloud. En bref, vous pouvez configurer Google Cloud pour exporter des informations de facturation détaillées vers BigQuery [ 1]. Exporter ces données vers BigQuery vous permet de suivre au jour le jour et avec précision le coût de vos services Google Cloud.
Dashboard Grafana affichant les données de facturation Google Cloud issues de BigQuery
Le plugin de source de données BigQuery n'étant pas encore officiellement pris en charge par Grafana, vous devrez l'installer manuellement depuis le dépôt git du plugin [ 2].
Dans la plupart des cas, l'installation se résume à une seule commande sur votre serveur Grafana, suivie d'un redémarrage. Les instructions complètes figurent dans la section installation du dépôt [ 3].
grafana-cli \--pluginUrl \https://github.com/doitintl/bigquery-grafana/archive/0.3.0.zip
\ plugins install doitintl-bigquery-datasourceUne fois le plugin installé, place à la pratique. Il doit être authentifié auprès de votre IAM Google Cloud : il vous suffit de configurer un compte de service et de téléverser la clé JSON associée.
Une fois authentifié, vous pouvez créer votre premier dashboard. Le plugin permet de construire la requête sous-jacente de manière visuelle, en suivant simplement l'assistant.
Commencez par sélectionner votre projet Google Cloud dans la liste, puis choisissez le nom de votre dataset et de votre table. Le plugin récupère les colonnes de la table (avec les métadonnées indiquant notamment si elle est partitionnée) pour que vous puissiez les sélectionner dans les listes déroulantes.
Sélectionnez ensuite le ou les champs à visualiser ainsi que les agrégations souhaitées, et voilà : vos données s'affichent dans la foulée !
Configuration du dashboard via l'assistant du plugin. Une version haute résolution est disponible.
Si vous préférez rédiger la requête vous-même, il suffit de cliquer sur le bouton Edit SQL.
Mode Edit SQL
Remarquez comment le plugin détecte qu'il s'agit d'une table partitionnée et ajoute automatiquement le filtre _PARTITIONTIME, pour que vous ne scanniez que les données de la plage temporelle choisie !
Nous espérons que le plugin BigQuery pour Grafana vous sera aussi utile qu'à nous, et serions ravis de découvrir votre cas d'usage ! Le plugin en est encore à ses débuts, mais nous suivons les issues de très près et nous engageons à traiter rapidement chacune de vos demandes [ 4].
Bonne visualisation !
Envie d'en lire davantage ? Consultez notre blog, ou suivez Vadim sur Twitter.