LogoTeluq
English
Logo
Répertoire de publications
de recherche en accès libre

Évaluation d’Apache Ozone et de son intégration du protocole de consensus RAFT avec la librairie Apache Ratis afin d'obtenir un système distribué fiable et cohérent [r-libre/3513]

Mathon, Nicolas (2024). Évaluation d’Apache Ozone et de son intégration du protocole de consensus RAFT avec la librairie Apache Ratis afin d'obtenir un système distribué fiable et cohérent (mémoire de maîtrise en Technologie de l'information, Université TÉLUQ, Québec, Canada). Direction : Lemire, Daniel.

Fichier(s) associé(s) à ce document :
[img]  PDF - Nicolas Mathon.pdf
Licence : Creative Commons CC BY-NC-SA.
 
Catégorie de document : Thèses et mémoires
Évaluation par un comité de lecture : Oui
Étape de publication : Non publié
Résumé : De nos jours, l’utilisation de systèmes distribués est monnaie courante. Traditionnellement, l’entreprise utilisait l’entrepôt de données (data warehouse), lequel utilisait la méthodologie « schema on write » pour emmagasiner l’information dans une structure de données robuste et optimisée. Par contre, cette rigidité la rendait difficile à modifier comparativement à celle du « schema on read » (Sebaa et al., 2017), telle qu’utilisée dans les lacs de données (data lake), terme inventé en 2010 par James Dixon, fondateur de la compagnie Pentaho. Ce dernier représente un environnement distribué qui permet de stocker et traiter une quantité phénoménale de données brutes non structurées, semi-structurées ou structurées. Ces dernières sont ensuite ingérées massivement et rapidement sans aucun processus de transformation intermédiaire (Extract, Transform and Load) car différentes structures de données seront appliquées uniquement lorsqu’elles seront utilisées (Extract, Load and Transform), pour y effectuer des analyses qui permettront à l’organisation de prendre des décisions éclairées pour assurer sa pé- rennité (Madera & Laurent, 2016). Relativement peu coûteux, ils permettent de relier plusieurs machines entre elles afin de former une grappe (cluster) qui permettra notamment de répartir la charge et de répliquer les données afin d’obtenir un environnement doté de haute disponibilité (Nachiappan, 2020). L’un des problèmes communs est de conserver la cohérence entre les réplications lors d’erreurs ou d’échecs (J.-S. Ahn et al., 2019). Parmi ces systèmes distribués, nous retrouvons un récent projet débuté en 2018 par la Apache Software Foundation (ASF) et nommé Apache Ozone (Ozone), dont la première version officiellement disponible au grand public est parue en septembre 2020 (Ozone, 2023). Ce produit possède plusieurs particularités dont celle de pouvoir gérer efficacement les petits fichiers, contrairement à Apache Hadoop (Hadoop) pour lequel c’est une problématique (Bende & Shedge, 2016), tout en étant hautement extensible (Mehmood et al., 2024). De plus, il intègre un autre logiciel de ASF, Apache Ratis (Ratis), qui est une implémentation Java du protocole de consensus Replicated And Fault Tolerant (RAFT), similaire à Paxos et Viewstamped Replication, basés eux aussi sur l’élection d’un leader (Liu, 2018), permettant la tolérance aux pannes grâce à ses processus de validation, d’entente et de réplication d’une même valeur entre toutes les machines (Ongaro & Ousterhout, 2014), offrant ainsi une excellente redondance. Le choix de RAFT n’est probablement pas le fruit du hasard, car ce dernier a su se forger une solide communauté ayant développé des versions dans une panoplie de langages notamment C++, Python et Java (Howard, 2014) et il est utilisé dans différents systèmes tels que etcd, CockroachDB et neo4j pour ne nommer que ceux-ci. Une chose est certaine, c’est que les pannes font déjà partie du quotidien et que les systèmes doivent être en mesure de les gérer tout en demeurant cohérents. Notre projet de recherche consiste donc à bâtir une infrastructure Ozone afin de pouvoir vérifier la fiabilité et mesurer la cohérence entre les différents noeuds (nodes) composant ce que nous appelons le RAFT cluster. Nous allons utiliser une méthodologie basée sur l’expérience et les simulations afin de produire nos résultats et valider notre hypothèse.
Déposant: Breault, Claude
Responsable : Claude Breault
Dépôt : 05 déc. 2024 21:12
Dernière modification : 05 déc. 2024 21:12

Actions (connexion requise)

RÉVISER RÉVISER