Flux de données: monitoring en temps réel
Les procédures opérationnelles de nombreuses autorités et entreprises sont fortement réglementées. Dans la pratique, il est souvent difficile de déterminer le respect effectif de ces règles. Nous avons développé des algorithmes le contrôlant automatiquement et pouvant faire face à de grandes quantités de données.
Portrait / description du projet (projet de recherche terminé)
Nous avons développé et implémenté des algorithmes parallélisés qui à même de contrôler des données dans un contexte dynamique pour vérifier le respect des règles. Comme entrée, ils reçoivent un flux de données arrivant en temps réel ainsi que les règles à contrôler. Ces dernières sont formulées dans une langue d’entrée définie. Elle doit permettre à ses utilisateurs d’exprimer simplement et de façon intuitive des liens temporels et de contenu entre différents points de données. En cas de violation des règles, il se produit une sortie compacte des données responsables de l’infraction.
Contexte
La conformité aux règles, ou "compliance", est une tâche importante à laquelle les entreprises consacrent des départements entiers. Ceux-ci doivent parfois, sur la base d’un nombre considérable de journaux d’événements ou de fichiers journaux, contrôler rapidement et de façon fiable que des procédures complexes respectent bien les règles fixées. Une règle typique pour une banque pourrait stipuler qu’un client ne peut pas retirer plus de 5000 francs par semaine. L’identification de certaines infractions a une grande valeur.
Objectif
Nous avons développé des algorithmes qui contrôlent en continu des données entrantes pour vérifier si elles contreviennent aux règles. Plus elles sont complexes, plus le contrôle de quantités énormes de données devient difficile. Une langue d’entrée plus ou moins expressive pour les règles gère la complexité réglementaire. Nous visions un contrôle des règles aussi efficace que possible pour des langues d’entrée expressives et pouvant donc s’utiliser de diverses manières.
Importance / Application
La poursuite du développement du contrôle automatisé des règles est soumise à un double défi. La recherche théorique améliore d’un côté l’expressivité de la langue d’entrée et développe des algorithmes pour ces langues. L’adaptabilité de ces algorithmes à des grandes quantités de données est toutefois souvent négligée. La recherche appliquée implémente des algorithmes adaptables pour une application parallélisée dans des clusters informatiques, délaissant souvent la conception de la langue d’entrée. Notre projet allie les deux approches, qui en bénéficieront ainsi mutuellement.
Résultats
Nous avons apporté des contributions significatives aux objectifs généraux du projet. Grâce aux résultats de notre projet, nous avons étendu les limites de scalabilité pour les contrôles expressifs du premier ordre afin qu'ils puissent être utilisés dans des environnements Big Data. En outre, nous avons identifié des méthodes de travail alternatives qui conduisent à une efficacité sans précédent pour les contrôles d'assertion. Toutes ces améliorations fondamentales sont accompagnées d'implémentations open-source accessibles au public, dont l'efficacité et l'évolutivité sont validées dans des études de cas synthétiques et réalistes. En outre, nous avons abordé les questions de l'exactitude des algorithmes de contrôle et de la compréhensibilité des résultats du contrôle, et nous avons développé des algorithmes pour déployer des contrôles dans un environnement distribué où les événements peuvent ne pas arriver au contrôle dans le bon ordre.
Titre original
Big Data Monitoring