Framework Hadoop

En informatique, un Framework (infrastructure de développement) est un ensemble d'outils et de composants qui permettent de créer les bases d'une application. Différent d'une bibliothèque par le fait qu'il en est lui-même constitué, un Framework dispose de sa propre architecture qui va guider celle de l'application à concevoir. Son but est d'aider le programmeur dans son travail tout en participant à augmenter sa productivité. Partons à la découverte de Hadoop, ce Framework Java optimisé pour la gestion des données à grande échelle.

Hadoop, qu'est-ce donc ?

Distribué par l'Apache Software Foundation, Hadoop (High-Availability Distributed Object-Oriented Platform) est un Framework libre, open source et conçu en Java. Son rôle principal est de manipuler le big data. Le big data est un ensemble de données de divers types (images, vidéos, tweets, données GPS, données provenant de capteurs ou d'objets connectés, mails…) dont la taille est de l'ordre des téraoctets, voire plus. Le volume de cet ensemble est si important que ni les capacités d'analyse d'un homme ni les systèmes traditionnels de gestion de base de données ne peuvent en venir à bout. Hadoop, lui, permet de traiter ce tas d'informations afin que l'on puisse en tirer des informations utiles.

Pourquoi choisir Hadoop ?

Lorsque votre environnement est composé de plusieurs machines et que vous disposez de plus de 20 téraoctets de données diverses, le framework Hadoop s'avère être une nécessité pour vous. Il est déployable sur plusieurs systèmes d'exploitation. Il possède des blocs dont la taille, de 64 Mo, peut être étendue jusqu'à 1 Go, surpassant largement celle des blocs classiques de 4 Ko. Hadoop se distingue des traditionnelles architectures matérielles en garantissant la redondance des données. Cette capacité du Framework assure la haute disponibilité et la durabilité des données qu'il gère. Ces dernières bénéficient par ailleurs d'une sécurité intrinsèque au Framework.

Mode de fonctionnement de Hadoop

Pour faciliter la création de données distribuées et scalables, Hadoop dispose d'un noyau dont le système de fichiers distribué HDFS (Hadoop Distributed File System) assure le stockage des données. Le traitement des données, quant à lui, se fait par le biais du Framework MapReduce.

Le fonctionnement de Hadoop repose sur le principe des grilles de calcul, où l'exécution d'un traitement est divisée en plusieurs nœuds :

  • les données sont découpées en blocs et automatiquement distribuées sur chacun des nœuds du cluster ;
  • chaque nœud reçoit le code et traite les données qui sont à son niveau, ce qui permet un travail plus rapide et efficace.

Toutefois, Hadoop n'est pas optimisé pour le traitement des tâches analytiques, itératives et interactives.