Présentation de HDFS
HDFS (Hadoop Distributed File System) est le composant de Hadoop en charge du stockage des données dans un cluster Hadoop.
Outre la lecture et l’écriture de
données, qui sont le lot commun de tout système
de gestion de fichiers, HDFS présente quelques caractéristiques
originales :
-
HDFS est optimisé pour manipuler des blocs de taille importante, couramment 64 ou 128 Mo, ce qui permet de réduire le seek time. À titre de comparaison, le système de gestion de fichiers Linux ext3 a une taille de blocs de 4 ou 8 Ko. De ce fait :
-
Les performances de HDFS sont meilleures lorsqu’il travaille sur des fichiers de taille importante (100 Mo ou plus).
-
Les performances de HDFS sont meilleures lorsqu’il travaille sur un nombre "réduit" de fichiers (des millions de fichiers plutôt que des milliards de fichiers).
-
En contrepartie, HDFS a été, et demeure encore largement, un système de gestion de fichiers du type "write once" : il n’est pas possible de gérer des écritures aléatoires dans un fichier HDFS.
-
Chaque bloc est sauvegardé en trois exemplaires (cf. chapitre Une vue globale de Hadoop), et sur des nœuds distincts dans le cluster, ce qui contribue à en garantir la fiabilité et la disponibilité. Ce mécanisme est appelé "réplication" des blocs.
-
HDFS s’appuie sur le système de gestion de fichiers natif. Sous Linux, ce sont ext3 ou ext4 le plus souvent.
-
Dans la mesure où un cluster Hadoop se "contente" le plus souvent de machines de milieu de gamme (cf. chapitre Aspects matériels), HDFS offre un stockage redondant pour des volumes de données très importants, à un coût acceptable.
Aucun commentaire :
Enregistrer un commentaire