Imprimer |
Contributions to the decentralization of Stream Processing: algorithms and architectures (Contributions à la décentralisation du Stream Processing : algorithmes et architectures) Belkhiria, Mehdi Mokhtar - (2021-11-25) / Universite de Rennes 1 Contributions to the decentralization of Stream Processing: algorithms and architectures
| |||
Langue : Anglais Directeur(s) de thèse: Tedeschi, Cédric Discipline : Informatique Laboratoire : IRISA Ecole Doctorale : MATHSTIC Classification : Informatique Mots-clés : systèmes distribués, stream processing, dimensionnement décentralisé, Exclusion mutuelle de groupe, Algorithmes
| |||
Résumé : Le Stream Processing est devenu un modèle standard pour prendre en charge le traitement de données en temps réel. Avec l'avènement de nouvelles plates-formes informatiques dispersées géographiquement telles que véhiculées par les Edge computing et Fog computing, où la distribution et la localité sont la norme, la révision des mécanismes de stream processing vers la décentralisation apparaît nécessaire, la gestion centralisée n'étant plus une option. La décentralisation est l'axe principal autour duquel s'articule cette thèse. Nous introduisons trois contributions ciblant la décentralisation du gestionnaire de Strean processing. Tout d'abord, nous présentons un nouvel algorithme de dimensionnement entièrement décentralisé pour les applications de traitement de flux. Deuxièmement, nous donnons les bases pour concevoir et construire un prototype logiciel d'un moteur de traitement de flux décentralisé. Parce que décentralisé, le processus de dimensionnement voient les nœuds faire face à des problèmes de concurrence. Nous avons d'abord pour ce problème développé une solution de synchronisation ad-hoc qui est spécifique à notre algorithme. Cependant, dans la troisième contribution, nous avons révisité le problème d'exclusion mutuelle de groupe, une primitive classique des systèmes distribués, afin de le rendre utilisable dans notre contexte particulier de traitement de flux décentralisé. Abstract : Stream Processing has become the emphde facto standard way of supporting real-time data analytics. With the advent of new geographically dispersed computing platforms such as Edge and Fog computing paradigms, where distribution and locality is the norm, revising stream processing mechanisms towards decentralization appears necessary, as centralized management is no longer an option. Decentralization is the main axe around which this thesis revolves. In this dissertation, we introduce three contributions targeting the decentralizing of the stream processing. Firstly, we inject decentralization into scaling by presenting a new fully decentralized autoscaling algorithm for stream processing applications. Secondly, we give the foundations to design and build a software prototype of a decentralized stream processing engine. Throughout decentralized autoscaling decisions, nodes must always remain somewhat in synchronisation with each others. In the first two contributions we made an ad-hoc solution which is specific for our algorithm. However, in the third contribution, we revised the group mutual exclusion problem which is an algorithm based on classical primitives of distributed systems, so as to make it usable in our particular context of decentralized stream processing. |