Revenir au contenu principal
Produit

Automatiser la surveillance des données et des KPI avec des alertes SQL

Transformez les vérifications manuelles des données en une surveillance automatisée qui détecte les problèmes au moment où ils se produisent

par Srilekha Dornadula

Dans de nombreuses organisations, la surveillance des données est encore une routine manuelle et répétitive : ouvrir le même tableau de bord chaque matin, réexécuter les mêmes requêtes, rechercher les anomalies. Au moment où quelqu'un demande "Pourquoi cette métrique a baissé ?", elle est souvent erronée depuis des heures, voire des jours, généralement signalée par un partie prenante, ou un rapport en aval qui a déjà diffusé de mauvais chiffres. La correction est un autre rituel manuel. Cela fonctionne jusqu'à ce que cela ne fonctionne plus : cela ne peut pas s'adapter aux équipes, aux environnements ou aux charges de travail de production, et le coût de la surveillance ne cesse d'augmenter.

Aujourd'hui, nous annonçons que Databricks SQL Alerts est Généralement Disponible (GA), avec plus de 4 000 clients utilisant déjà Alerts en production. SQL Alerts transforme cette routine manuelle en une surveillance fiable et automatisée : définissez une métrique ou une condition une fois en SQL, évaluez-la selon un calendrier (ou directement dans le pipeline Jobs qui produit les données), et notifiez les bons propriétaires lorsqu'elle franchit vos limites. Que vous suiviez des KPI commerciaux comme les revenus, ou la santé opérationnelle comme la fraîcheur des pipelines, ou des problèmes de qualité des données, SQL Alerts vous aide à détecter les problèmes tôt, à réduire les vérifications manuelles et à maintenir la cohérence de la surveillance à mesure que l'utilisation augmente.

“L'implémentation de SQL Alerts pour nos services de détection d'anomalies a rendu l'observabilité beaucoup plus simple. Au lieu de maintenir une infrastructure de surveillance, nous pouvons maintenant nous fier à Alerts pour rechercher les problèmes et notifier les utilisateurs. Son interface simplifiée et son expérience personnalisable ont réduit l'effort manuel pour notre équipe et nous ont aidés à identifier les problèmes plus rapidement.” —Enrique Olivares, Big Data Software Development Engineer, Zillow

Aperçu de SQL Alerts

Qu'est-ce que SQL Alerts ?

Une alerte SQL regroupe une requête SQL, une condition d'évaluation, un calendrier et un ensemble de destinations de notification. Lorsque le résultat de la requête franchit la condition lors de son exécution programmée, Databricks notifie les bons propriétaires via les canaux que vous configurez.

Ce que les équipes peuvent faire avec SQL Alerts :

  • Détecter rapidement les dérives des métriques commerciales. Alertez lorsque les revenus chutent de plus de 5 % d'une semaine à l'autre, lorsque le taux de conversion quotidien tombe en dessous d'une cible, ou lorsque le nombre d'utilisateurs actifs quotidiens diminue dans une région clé.
  • Garder les pipelines fiables. Alertez lorsqu'une table n'a pas été rafraîchie depuis la dernière heure, lorsque le nombre de lignes tombe en dessous de la base de référence attendue, ou lorsqu'un travail charge des données partielles.
  • Détecter les problèmes de qualité des données personnalisés avant que les tableaux de bord ne tombent en panne. Alertez lorsque les taux de valeurs nulles dépassent un seuil, lorsque des clés dupliquées apparaissent, ou lorsqu'une distribution s'écarte des limites attendues.

    Planifier et configurer une alerte

Ce qui est disponible en GA ?

SQL Alerts GA inclut tout ce dont vous avez besoin pour créer, exploiter et adapter les alertes en production :

  • Créer des alertes dans l'éditeur SQL. Définissez la requête, la condition d'évaluation, le calendrier et les notifications dans un seul flux. Vous bénéficiez de toute la puissance de Databricks SQL avec Genie Code pour vous aider à écrire des requêtes.
  • Exécuter les alertes là où vous en avez besoin. Utilisez les alertes SQL autonomes pour s'exécuter selon leur propre calendrier, ou ajoutez une tâche SQL Alert à un Job Lakeflow pour évaluer les conditions directement dans le pipeline qui produit les données.
  • Atteindre les bonnes personnes de la bonne manière. Envoyez des notifications par e-mail, Slack, PagerDuty, Microsoft Teams ou webhooks, avec des modèles riches incluant l'historique des évaluations des alertes afin que les destinataires puissent trier plus rapidement.
  • Gérer les alertes comme du code de production. Versionnez les définitions d'alertes dans Git, déployez-les via Declarative Automation Bundles, et automatisez la création et les mises à jour via les API, Terraform, et les SDK.
  • Observer les alertes à grande échelle. Les nouvelles tables système d'alertes (en préversion privée) – `system.alert.alerts` et `system.alert.alert_evaluation_history` – exposent les données de configuration et d'évaluation dans tout votre espace de travail, afin que les équipes puissent auditer les alertes, analyser les tendances et gérer les charges de travail à grande échelle.
“L'intégration native de Databricks rend les alertes simples à définir et fiables à exploiter. Avoir la logique d'alerte, la planification et les notifications gérées en un seul endroit - et versionnées via Git - nous a aidés à standardiser la surveillance et à détecter les problèmes plus rapidement, avec beaucoup moins d'efforts manuels.” —Tom Potash, Software Engineering Manager chez DoubleVerify

Exemple d'utilisation de SQL Alerts

Passons maintenant en revue un exemple pour démontrer la valeur de SQL Alerts. Un besoin courant de surveillance commerciale est la détection de baisses inattendues de revenus par rapport aux bases de référence récentes. Cet exemple montre comment créer une alerte qui compare les revenus d'hier à la moyenne sur sept jours et notifie les bonnes personnes lorsque la baisse dépasse 5 %.

Étape 1 : Écrire la requête dans l'éditeur SQL

Cette requête calcule les revenus d'hier et les compare à la moyenne sur sept jours.

Sortie : Une seule colonne, `revenue_pct_change`, que l'alerte évalue. Cette alerte serait déclenchée car la baisse des revenus dépasse 5 %.

Étape 2 : Configurer la condition et les notifications

Dans l'éditeur, définissez la condition sur revenue_pct_change -5 et ajoutez les destinataires des notifications. Vous pouvez également personnaliser le modèle de notification à l'aide de l'éditeur markdown riche pour ajouter plus de contexte ou les prochaines étapes dans votre notification.

Configurer la condition

Étape 3 : Planifier

Choisissez une cadence pour l'évaluation. Par exemple, pour un KPI critique pour l'entreprise, une évaluation quotidienne garantit que les changements sont détectés dans les 24 heures.

Lorsque l'alerte se déclenche, les destinataires reçoivent une notification avec le statut d'évaluation de l'alerte, le résultat, un lien vers l'alerte et l'historique des exécutions récentes. Vous pouvez commencer à enquêter immédiatement.

Exemple d'e-mail d'alerte déclenchée

SQL Alerts comprend également une page de détails complète sur les alertes avec l'historique complet des exécutions, montrant quand chaque évaluation a été exécutée, si l'alerte a été déclenchée et les destinations notifiées. Cela aide les équipes à confirmer que la surveillance fonctionne comme prévu et à trier plus rapidement en montrant quand l'alerte a commencé à se déclencher.

Exemple d'alerte de revenus

Créer des alertes avec Genie Code (Bientôt disponible)

Avec Genie Code, la procédure ci-dessus devient une expérience en une seule invite. Décrivez l'alerte que vous souhaitez en langage naturel ("alertez-moi lorsque les revenus quotidiens chutent de plus de 5 % d'une semaine à l'autre"), et Genie Code crée une alerte pour vous de bout en bout. Vous pouvez toujours demander à Genie d'apporter des modifications, ou ouvrir l'interface utilisateur des alertes pour modifier directement.

Écrire des alertes avec Genie CodePrise en charge des alertes par Genie Code

Exécutez des alertes dans les tâches Lakeflow

Les alertes SQL autonomes s'exécutent selon leur propre calendrier, indépendamment de tout pipeline. Cela convient à de nombreux cas d'utilisation de surveillance : tout ce qui n'a pas d'importance quant à l'arrivée des données en amont.

Mais certaines vérifications appartiennent au pipeline qui produit les données : Ce chargement a-t-il chargé toutes les données ? Cette métrique est-elle saine avant que nous la publions ? La prochaine étape devrait-elle même s'exécuter ? Les exécuter en tant qu'alertes planifiées autonomes signifie que l'alerte s'exécute selon son propre calendrier, séparément du pipeline qui produit les données, et son résultat ne peut pas influencer ce qui se passe ensuite dans le pipeline.

Avec la nouvelle tâche d'alerte SQL dans les tâches Lakeflow (en aperçu public), vous pouvez faire exactement cela. Le même objet d'alerte peut maintenant s'exécuter dans vos pipelines en tant que tâche. Il expose également l'état d'évaluation (OK, DÉCLENCHÉ ou ERREUR) en tant que valeur de sortie de tâche à laquelle vous pouvez faire référence en aval.

Alertes dans les tâches Lakeflow

Exemple : Détecter les pics de fraude au moment où les données de transaction arrivent

Un pipeline charge les transactions par carte de crédit chaque heure. Si le taux de fraude augmente après un chargement, l'équipe des opérations de fraude doit être informée immédiatement pour enquêter sur le pic.

Ajoutez une tâche d'alerte SQL juste après l'étape de chargement pour vérifier si le taux de fraude dépasse votre seuil. Ajoutez ensuite une tâche Si/Sinon avec la condition {{tasks.Alert-FraudRateCheck.output.alert_state}} == "TRIGGERED". Si l'alerte renvoie OK, le pipeline continue vers les rapports BI réguliers. Si elle est DÉCLENCHÉE, elle est acheminée vers un notebook de diagnostic qui génère une ventilation par catégorie de commerçant et par région, et envoie un e-mail à l'équipe des opérations de fraude. Le même objet d'alerte peut piloter le flux de votre pipeline !

Exemple d'alerte de pic de fraude

Gérez les alertes de manière fiable en production

À mesure que l'alerte s'étend à travers les équipes et les environnements, le défi passe de la création d'alertes à leur gestion fiable dans le temps. Les alertes SQL sont conçues pour gérer les flux de travail de production grâce à :

  • Intégration Git : Les définitions d'alertes résident dans Git, versionnées et examinées aux côtés du reste de votre code de production.
  • Automation Bundles déclaratifs : Fournissent un moyen structuré de définir et de déployer des alertes aux côtés d'autres ressources de l'espace de travail, prenant en charge la promotion répétable du développement à la production.
  • API, Terraform et SDK : Créez et gérez des alertes par programme via des API et le SDK Databricks.

Rejoignez les plus de 4 000 clients qui utilisent déjà les alertes SQL. Votre première alerte ne prend que cinq minutes à configurer. Lisez la documentation sur les alertes SQL et commencez par une requête de surveillance que vous vérifiez déjà périodiquement manuellement !

(Cet article de blog a été traduit à l'aide d'outils basés sur l'intelligence artificielle) Article original

Recevez les derniers articles dans votre boîte mail

Abonnez-vous à notre blog et recevez les derniers articles directement dans votre boîte mail.