Nous mettrons à jour notre Politique de confidentialité prochainement. En voici un aperçu.

L'essentiel de Hadoop

Assimiler les principes du HDFS

Testez gratuitement nos 1340 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Dans cette vidéo, vous découvrirez comment utiliser les notions de réplication, de taille de bloc, de compression et de permission.
06:03

Transcription

Bien que nous ayons déjà positionné l'HDFS parmi les systèmes de fichiers, nous n'avons pas vu ses caractréristiques, à proprement parler. Notamment, par exemple, concernant la Réplication. La Réplication est le fait d'avoir les données accessibles à plusieurs endroits simultanément. Cette Réplication, sur l'HDFS, se fait par blocs. C'est à dire que ce sont les blocs, non pas les fichiers, qui sont accessibles à plusieurs endroits simultanément. Elles ne concernent bien entendu que les fichiers. En effet, les dossiers, à proprement parler, n'existent que dans l'index. Par défaut, l'HDFS a un ratio de Réplication de 3. C'est à dire que chaque bloc de chaque fichier doit être à trois endroits simultanément. Cependant, il peut être personnalisable par fichier, ou par répertoire, grâce à la commande HDFS dfs setrep. Il peut ainsi donc être ajusté en fonction des besoins, notamment si la donnée doit être plus répliquée, par exemple parce qu'elle est sensible, ou pour augmenter les performances en lecture, ou moins répliquée, parce qu'elle consomme beaucoup trop d'espace de stockage pour sa critcité. On peut avoir des cas de sous-réplication, c'est à dire qu'à un moment donné, il n'existe pas assez de réplicats d'un même bloc, dans ce cas-là, le système essaye de le corriger au plus vite, et des cas de surréplication , c'est à dire qu'à un moment donné, trop de réplicats existent pour un même bloc, auquel cas, le système HDFS le corrige également au plus vite, simplement en supprimant un ou plusieurs réplicats. Le nombre de réplicats est visible dans chacune des interfaces, que ce soit l'interface web ou la ligne de commande. On a également la notion de Block Size. Donc là, le Block Size étant la taille d'un bloc. Toutes les données étant stockées par bloc, l'espace de stockage étant découpé par blocs, ce paramètre peut être modifié, et doit être initialisé à l'instantiation du cluster. Il est forcément le même pour tout le cluster et pour tous les fichiers. Plus le Block Size est gros, plus cela est adapté pour les gros fichiers et les fichiers peu nombreux. Plus il est faible, plus c'est adapté pour les petits fichiers et les fichiers très nombreux, et plus cela limite le surcoût, à proprement parler, de travailler par blocs. L'HDFS supporte également nativement la Compression. Ça veut dire que tout ce qui est écrit ou lu de l'HDFS peut être compressé ou décompressé à la volée. Ça va passer par des codecs de compression, soit écrits en Java, soit natifs directement sur le système s'ils sont disponibles. Bien entendu, compresser réduit l'espace de stockage nécessaire pour stocker les données et augmente de ce fait les vitesses de transfert, également, puisque moins de données à transférer. Par contre, cela induit une charge CPU supplémentaire, et en plus, empêche les données de pouvoir être « splittées », c'est à dire découpées en plusieurs parties. Différents codecs de compression sont disponibles, on va retrouver notamment Gzip, Bzip2, Snappy et LZO, chaque codec ayant ses avantages et ses inconvénients en fonction de nos besoins. Il faut savoir que l'HDFS va automatiquement reconnaître les extensions présentes dans ce tableau et utiliser les codecs de compression, que ce soit lors des écritures dans les fichiers, par exemple .bz2, ou lors de la lecture des fichiers. Pour les programmes, de ce fait, l'utilisation de la compression est totalement transparente. Si le programme veut écrire dans l'HDFS en passant directement par les API d'Hadoop FS et écrire un fichier .snappy, l'HDFS le compressera directement. De la même façon, s'il lit un fichier se terminant par .lzo, l'HDFS le décompressera et le fournira en version brut directement au programme. Les stratégies usuelles à utiliser pour la compression sont soit de ne pas en utiliser, soit d'utiliser Gzip ou Bzip2 pour la compression des données persistantes sur l'HDFS, donc les données d'entrée ou de sortie, par exemple, de vos Map Reduce parce qu'ils ont un haut degré de compression et d'utiliser du LZO ou du Snappy pour les données intermédiaires, les données qui transitent sur l'HDFS. Outre le fait de réduire l'espace disque, l'objectif, surtout là, est de peu surcharger le CPU tout en gagnant en performance grâce aux vitesses de transfert plus élevées parce qu'on transfère moins de données. Aussi, l'HDFS a également un système de permission. De façon similaire à ce qu'on retrouve sous Linux, chaque fichier et répertoire a un propriétaire et un groupe. Les trois sont alors définis pour le propriétaire, le groupe et les autres, et à chaque fois, pour la lecture, l'écriture et la traversée du répertoire. On a également un stick-bit pour les répertoires et l'HDFS supporte les ACL POSIX pour avoir des permissions plus fines avec par exemple getfacl. Le système de permission peut se désactiver pour l'intégralité de l'HDFS mais dans ce cas-là, il peut cependant être nécessaire, toujours, d'utiliser le Superuser qui est le user HDFS par défaut. Ce système de permission va de paire avec un système d'Authentification qui se fait soit de façon simple avec un login mot de passe, soit via Kerberos.

L'essentiel de Hadoop

Mettez en pratique les concepts spécifiques à Hadoop. Abordez l'HDFS pour le stockage, les MapReduce pour le traitement, ainsi que la base de données NoSQL d​e Hadoop : HBase.

3h43 (42 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
HBase HBase 1.2
Spécial abonnés
Date de parution :31 mars 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !