
Mehr Transparenz über Abfragen, bei denen sich eine Kostenoptimierung lohnt – plus Schulung, wie man Google BigQuery (nicht) abfragt.
Der BigQuery-Snitch im Einsatz, um teure Abfragen aufzuspüren
Hin und wieder passieren uns allen Fehler und wir setzen nicht optimierte Abfragen auf Google BigQuery ab. Entscheidend ist, wie schnell wir solche Abfragen erkennen, daraus lernen und das Gelernte beim nächsten Mal anwenden.
Bei DoiT International hören wir in unserer Rolle als Google Managed Service Provider immer wieder dieselbe Frage von unseren Kunden: Wie können Teams solche Abfragen sofort sichtbar machen, sobald sie laufen? Mein Kollege Moshe Ohayon hat dafür eine elegante Lösung gefunden und sie als Open Source veröffentlicht – jetzt kann sie jeder nutzen (und weiterentwickeln!).
Wenn Sie der README folgen, lässt sich mit einer einzigen Google Cloud Function jede Ihrer Google BigQuery-Abfragen überwachen. Alles, was den `ALERT_THRESHOLD` überschreitet, landet automatisch in Slack.
Die folgende `config.json` löst Alerts für alle Abfragen über 10 USD aus und schickt eine Nachricht an Slack sowie per 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": "",
"EMAIL_CC": [\
"\
```\
\
[[email protected]](mailto:[email protected])\
\
```\
"\
],
"FIELDS_TO_RETRIEVE": [\
"job_id",\
"user_email",\
"total_bytes_billed",\
"total_bytes_processed"\
]
}
So sehen bq-snitch-Benachrichtigungen in Slack aus. Bei meiner Beispielabfrage war ich zugegebenermaßen nicht besonders kreativ ;-)
bq-snitch verschickt Benachrichtigungen auf Wunsch auch per E-Mail. Aktivieren Sie dazu Sendgrid in Ihrem Google Cloud Platform-Projekt und tragen Sie Ihren Sendgrid-API-Key in die config.json ein.
Taboola.com gehört zu den ersten Beta-Testern von bq-snitch.
"Der Transparenzgewinn durch dieses Tool ist deutlich spürbar. Das schnelle, präzise Feedback hilft uns dabei, unser gesamtes Cloud-Kostenmanagement zu verbessern."
Wenn Sie mit Google BigQuery (und Slack bzw. E-Mail) arbeiten, geben Sie bq-snitch eine Chance. Haben Sie Ideen, wie sich das Tool verbessern lässt? Wir freuen uns über Issues und Pull-Requests auf GitHub.
Falls nichts davon für Sie passt, hinterlassen Sie uns wenigstens einen Stern 😇
Lust auf mehr? Schauen Sie in unseren Blog oder folgen Sie Vadim auf Twitter.