Architecture de solution : Détection d’anomalie avec apprentissage machine

Les services utilisés par les départements informatiques modernes génèrent des volumes importants de données de télémétrie pour suivre divers aspects de l’intégrité opérationnelle, des performances du système, des informations sur l’utilisation, des métriques métier, des alertes et bien plus. Souvent, cependant, la surveillance et la collecte d’informations à partir de toutes ces données ne sont pas entièrement automatisées, et peuvent être sujettes à des erreurs, ce qui complique la tâche de déterminer efficacement et précisément l’intégrité du système à un moment donné.

Cette solution personnalisable de détection d’anomalie utilise l’apprentissage automatique pour veiller à une haute disponibilité des systèmes informatiques, et fournit un pipeline de bout en bout qui ingère des données provenant de sources locales et cloud, et signale des événements anormaux aux systèmes de surveillance et de création de tickets en aval.

Cette solution vous permet de rapidement détecter et corriger des problèmes sur la base de métriques d’intégrité sous-jacentes en provenance de l’infrastructure informatique (processeur, mémoire, etc.), de services (délais d’attente, variations de SLA, interruptions d’alimentation, etc.) et d’autres indicateurs de performance clés (carnet de commandes, échecs de connexion et de paiement, etc.).

Déployer dans Azure

Le modèle prédéfini suivant permet de déployer cette architecture dans Azure

Déployer dans Azure

Rechercher sur GitHub

Machine Learning(Anomaly Detection) Service Bus topics(Publish/subscribe capabilities) Visual Studio Application Insights(Monitoring and telemetry) Event Hub(Event queue) Table Storage(Big Data store) Stream Analytics(Realtime analytics) Metadata Save ML output Score each dataset Publish anomalies detected Power BI Azure SQL DB(Anomaly detection results) Data Factory Time series data

Conseils sur l’implémentation

Produits Documentation

Event Hubs

Il s’agit du point d’entrée du pipeline, où les données brutes de la série chronologique sont ingérées.

Stream Analytics

Stream Analytics effectue une agrégation à intervalles de 5 minutes, et agrège les points de données brutes par nom de métrique.

Stockage

Stockage Azure stocke les données agrégées par le travail Stream Analytics.

Data Factory

Data Factory appelle l’API de détection d’anomalie à intervalles réguliers (par défaut, toutes les 15 minutes) sur les données figurant dans Stockage Azure. Il stocke les résultats dans une base de données SQL.

SQL Database

SQL Database stocke les résultats de l’API de détection d’anomalie, dont les détections binaires et les scores de détection. Il stocke également des métadonnées facultatives envoyées avec les points de données brutes pour permettre la génération de rapports plus compliqués.

Machine Learning Studio

Ceci héberge l’API de détection d’anomalie. Notez que l’API elle-même est sans état, et exige que des points de données historiques soient envoyés dans chaque appel d’API.

Service Bus

Les anomalies détectées sont publiées dans une rubrique Service Bus pour permettre leur utilisation par des services de surveillance externes.

Application Insights

Application Insights permet de surveiller le pipeline.

Power BI

Power BI fournit des tableaux de bord affichant les données brutes, ainsi que les anomalies détectées.

Architectures de solution associées