Qu'est-ce que c'est
Azure Event Hub est un service de streaming d'événements à haute capacité, managé et entièrement élastique. Son modèle d'abstraction est celui d'un log d'événements distribué et partitionné : les producteurs écrivent des événements à la fin du log ; les consommateurs lisent à leur propre rythme depuis n'importe quel point dans le temps, dans la période de rétention configurée.
Dans l'architecture d'IN-SIGHT, l'Event Hub reçoit la télémétrie de tous les véhicules de la flotte via le point de connexion intégré d'Azure IoT Hub (built-in endpoint), sans aucun service intermédiaire. Depuis l'Event Hub, trois consumer groups indépendants traitent les données en parallèle pour trois objectifs distincts.
Découplage garanti : L'Event Hub agit comme un buffer entre le débit de production des Pods IoT et le débit de consommation d'ADX. Si ADX subit une latence due à une ingestion lourde, les messages s'accumulent dans l'Event Hub sans perte, et sont traités lorsque le consommateur rattrape son retard.
Rôle dans IN-SIGHT
L'Event Hub est l'unique point d'entrée de la télémétrie vers la couche cloud. Trois consumer groups lisent le même flux pour des objectifs différenciés :
- Consumer group : adx-ingest — Azure Data Explorer consomme les événements directement via une data connection native (sans ETL intermédiaire). La télémétrie atterrit dans ADX en moins de 5 secondes après l'émission par le Pod.
- Consumer group : realtime-alerts — Une fonction Azure Stream Analytics évalue chaque événement par rapport aux règles d'alerte configurées dans Portal IN-SIGHT. Si une valeur dépasse les seuils de l'EKF, elle génère une alerte classée (CRITICAL / WARNING / INFO) en moins de 2 secondes.
- Consumer group : archive — Azure Blob Storage reçoit une copie compressée de tous les événements pour une rétention à long terme (minimum 12 mois), indépendamment de la politique de rétention de l'Event Hub.
Flux de télémétrie end-to-end
Le parcours complet d'un paquet de télémétrie depuis le capteur jusqu'au tableau de bord :
Pod IoT (CM4 à bord du véhicule)
│ JSON compact · MQTT sur TLS 1.3
▼
Azure IoT Hub
│ Route les messages D2C vers le built-in endpoint
│ Device Twin synchronisé en parallèle
▼
Azure Event Hub ← point de distribution
│
├── [adx-ingest] → ADX (latence <5 s)
│ requêtes KQL · EKF cloud
│
├── [realtime-alerts] → Stream Analytics
│ Règles → alertes Portal
│
└── [archive] → Azure Blob Storage
Rétention 12 mois+
Schéma de partitionnement
Les événements sont partitionnés par vehicleId, ce qui garantit que tous les messages d'un même véhicule sont traités dans l'ordre par le même consommateur, en préservant la séquence temporelle nécessaire à l'analyse de l'EKF.
Partition key: vehicleId
Partition 0 → TMB-5000-01, TMB-5000-02, ...
Partition 1 → TMB-5000-05, TMB-5000-06, ...
Partition 2 → RC-447-201, RC-447-202, ...
Partition 3 → RC-447-205, RC-447-206, ...
Avec 4 partitions par défaut dans la configuration standard d'IN-SIGHT, le système peut traiter jusqu'à 4 MB/s de télémétrie de manière soutenue, avec une mise à l'échelle automatique jusqu'à 20 MB/s via des throughput units supplémentaires.