Pour beaucoup, le Big Data en est encore dans une phase exploratoire pour analyser les cas d’usages propres aux métiers d’une entreprise. C’est vrai que dans cette phase on est souvent loin des préoccupations d’architecture.
Pour ceux qui ont franchi cette première étape et qui déploient de véritables solutions de Big Data autour de Hadoop alors la question de l’infrastructure prend une autre tournure.
Pourquoi est-ce important de se poser des questions d’infrastructures lorsque l’on parle de Hadoop ?
Hadoop utilise un système distribué qui combine :
– Un système de fichier (HDFS) conçu pour stocker de très gros volumes de données sur un grand nombre de machines équipées de disques durs banalisés. Il permet l’abstraction de l’architecture physique de stockage, afin de manipuler un système de fichiers distribué comme s’il s’agissait d’un disque dur unique
– Un framework d’exécution (Map/Reduce) qui permet des traitements parallèles et distribués. Le système découpe automatiquement les données en entrée en bloc de données de même taille. L’exécution des tâches en parallèle est ensuite planifiée sur les nœuds disponibles
– Un système de base de données HBASE souvent utilisé pour manipuler rapidement de très grandes tables de donnée
Ces composants ont chacun leurs propres besoins d’architecture en termes de débit et de latence. Il est donc important de comprendre comment tous ces éléments travaillent ensemble pour optimiser l’infrastructure qui va supporter Hadoop
On associe souvent Big Data et stockage, la réalité est que Hadoop en termes d’architecture concerne d’avantage le traitement et le réseau.
Des analyses ont été faites en tenant compte des performances applicatives, des logs , du traitement et du réseau pour avoir une vue complète de ce qui se passait dans un datacenter.
Une présentation “slideshare” résume cette analyse
Cette analyse a été présentée au Hadoop summit 2013 qui se tenait à San José fin juin