Cloud Intelligence™
Démasquer les requêtes Google BigQuery qui coûtent cher
Cette page est également disponible en English, Deutsch, Español, Italiano, 日本語 et Português.
About Vadim Solovey
Founded DoiT in 2011 and have been here ever since — in every flavor of CTO, co-CEO, and now CEO. I started my career in 1999 building data centers before anyone called it "the cloud," and I've spent the two decades since trying to deliver on what the cloud was actually supposed to be. I still write code most weeks.
My personal page
Identifiez les requêtes Google BigQuery qui méritent une optimisation des coûts et formez vos utilisateurs aux bonnes pratiques d'exécution.
Le BigQuery snitch en action pour repérer les requêtes coûteuses
Il nous arrive à tous, de temps à autre, d'exécuter des requêtes Google BigQuery non optimisées. L'essentiel, c'est la vitesse à laquelle on les repère, on en tire les leçons et on passe à la suite.
Chez DoiT International, en tant que Google Managed Service Provider, nos clients nous demandent souvent comment leurs équipes peuvent faire remonter ces requêtes dès leur exécution. L'un de mes collègues, Moshe Ohayon, a trouvé une réponse élégante à ce problème et l'a publiée en open source : tout le monde peut désormais l'utiliser (et la faire évoluer !).
PerfectScale™ for Kubernetes
Ready to optimize?
Get your free Kubernetes savings analysis

En suivant le README, vous pouvez déployer une simple Google Cloud Function qui surveille l'ensemble de vos requêtes Google BigQuery et publie sur Slack celles qui dépassent `ALERT_THRESHOLD`.
Le `config.json` ci-dessous déclenche des alertes pour toute requête supérieure à 10 $ et envoie un message à la fois sur Slack et par e-mail.
{ "ALERT_THRESHOLD": 10
, "TB_COST": 5, "SLACK_ALERT": true, "SLACK_WEBHOOK_URL": "https://hooks.slack.com/services/.
..", "SLACK_WEB_API_TOKEN": "", "SLACK_WEB_API_DESTINATION_CHANNEL": "", "EMAIL_ALERT": true, "SENDGRID_API_KEY": "SG...", "EMAIL_SENDER": "Your cloud bill shouldn't be a mystery
Optimization, automation, expertise. In one platform.
",
"EMAIL_CC": [\
"\
```\
\
[[email protected]](mailto:[email protected])\
\
```\
"\
],
"FIELDS_TO_RETRIEVE": [\
"job_id",\
"user_email",\
"total_bytes_billed",\
"total_bytes_processed"\
]
}
Exemple de notification bq-snitch publiée sur Slack. J'avoue, ma requête de démonstration manque un peu d'originalité ;-)
bq-snitch peut aussi envoyer les notifications par e-mail. Pensez à activer Sendgrid sur votre projet Google Cloud Platform et à renseigner votre clé d'API Sendgrid dans le config.json.
Taboola.com fait partie des premiers bêta-testeurs de bq-snitch.
Les gains de visibilité apportés par cet outil sont tangibles. Un retour rapide et précis nous aide à mieux piloter nos coûts cloud dans leur ensemble.
Si vous utilisez Google BigQuery (avec Slack ou l'e-mail), testez bq-snitch. Si vous avez des idées pour l'améliorer, vos issues et pull-requests sont les bienvenues sur GitHub.
Si rien de tout cela ne vous parle, vous pouvez toujours nous laisser une étoile 😇
Envie d'en lire davantage ? Faites un tour sur notre blog ou suivez Vadim sur Twitter.