Introduction à HDFS
Upcoming SlideShare
Loading in...5
×
 

Introduction à HDFS

on

  • 2,167 views

A l'occasion de Solution Linux 2013 nous présentons Hadoop à la communauté en France. Ici une introduction à HDFS.

A l'occasion de Solution Linux 2013 nous présentons Hadoop à la communauté en France. Ici une introduction à HDFS.

Statistics

Views

Total Views
2,167
Views on SlideShare
2,159
Embed Views
8

Actions

Likes
0
Downloads
52
Comments
0

3 Embeds 8

http://www.altic.org 6
https://twitter.com 1
http://oracle.sociview.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial-NoDerivs LicenseCC Attribution-NonCommercial-NoDerivs LicenseCC Attribution-NonCommercial-NoDerivs License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Introduction à HDFS Introduction à HDFS Presentation Transcript

    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’UtilisationCommerciale - Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/HUG France SL2013 – Mai 2013Introduction à HDFSHadoop Distributed File SystemCharly CLAIRMONTAltic - http://altic.orgcharly.clairmont@altic.org@egwada
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Pourquoi Hadoop ?● Traiter de larges jeux de données● Tolérance à la panne● les machines sont faillibles● et pour Hadoop ce nest pas une exception● Il coûte très cher dincorporer la fiabilité au seinde chaque application● Efficace même sur une infrastructure commode
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Un peu dhistoire● Dec 2004 – Google publie ses papier GFS, MR● Juil 2005 – Nutch utilise une implémentation de MapReduce● Jan 2006 – Doug Cutting rejoint Yahoo!● Fév 2006 – Hadoop devient un nouveau sous-projet de Lucene (Moteur derecherche)● Avr 2007 – Yahoo! exploite un cluster Hadoop de 1000 nœuds● Jan 2008 – Hadoop devient un "Apache Top Level Project"● Fev 2008 – Yahoo! utilise Hadoop pour calculer les index de son moteur derecherche en production● Juil 2008 – un cluster de 4 000 nœuds● ...● Jiun 2011 – 40 000 nœuds Hadoop chez Yahoo!
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Hadoop une boîte à outil à tout faire● Recherche– Yahoo, Amazon, Zvents,● Traitement de logs– Facebook, Yahoo, ContextWeb. Joost, Last.fm● Système de recommandation– Facebook, Amazon● Data Warehouse– Facebook, AOL, HSBC, Crédit Mutuel● Traitement de documents, dimages, de Videos– New York Times, Eyealike
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Infrastructure « commode »● Architecture typique sur 2 niveaux● machines commodes● 30 à 40 noeuds par racks● Liens entre les rack de 3 à 4 Go● liens interne au rack 1Go
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/HDFS, pourquoi ?● Système de fichiers large et distribué● 10K nœuds, 100 millions de fichier, 10 Po– Ou moins !– Voire bien plus !● Sait fonctionner au dessus de machines commodes● Réplication de fichiers pour prévenir les pannes● Détection des échecs, et reprendre à partir deux● Optimisé pour les traitements par lots (plus pour longtemps)● Emplacements des données connus– les programmes peuvent y être déplacés● taille de la bande passante réduite
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Système de fichiers distribué● Un seul espace de nom pour tout le cluster● Cohérence de la donnée● Écrire une fois pour dun nombreux accès● les applications clientes ont seulement la possibilité dajouter de ladonnées● Fichiers découpés en blocs● généralement en bloc de 128 Mo● blocs répliqués sur de multiples nœuds● API intelligente● Possibilité de rechercher les emplacements des blocs● Possibilité daccéder directement aux données depuis le DataNode
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/HDFS Architecture
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Fonction du NameNode● Gestion du système de fichiers● Association entre fichiers et blocs de données● Association entre blocs et emplacements surles DataNodes● Configuration de la gestion du cluster● Moteur de réplication des blocs
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Metadonnées du NameNode● Métadonnées en mémoire● Toutes les métadonnées sont montées en mémoire● Aucune pagination des métadonnées du système de fichier● Type de Métadonnées● liste des fichiers● liste des blocs pour chaque fichier● liste des DataNodes pour chaque bloc● attributs de fichier, dernier accès, facteur de réplication● Transactions● enregistre les créations de fichiers, leurs suppressions...
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/DataNode● Un serveur de bloc● Stocke les données en local sur le système de fichier(ext3)● Stocke les métadonnées des blocs (CRC)● Fournit les métadonnées et des données aux Clients● Rapport des blocs● Régulièrement envoie un rapport des blocs auNameNode● Facilite léchange des données entre noeuds● Transmet les données vers dautres DataNodesspécifiés
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Placement des blocs● Stratégie actuelle● Un répliqua sur un noeud aléatoire dans le racklocal● Second répliqua sur un un rack distant● Troisième répliqua sur le même un rack distant● Répliqua additionnel placé alléatoirement● Clients lisent depuis le réplica le plus proche● Évolution● Rendre ce placement extensible (plugable)
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Moteur de réplication● Le NameNode détecte les failles des DataNodes● Désigne des DataNodes pour les nouveaux répliquas● Gestion de la charge● utilisation des disques● utilisation du réseau
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Des données exactes● Checksums pour valider les données● CRC32● Création des fichiers● Calcul dun checksum pour des paquets de 512 octets● Les DataNodes stockent le checksum● Accès au fichier● Récupération du fichier et du checksum depuis leDataNode● Si le checksum est invalide récupération dun autrerépliqua
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Faille du NameNode● Talon dAchille du système● Transactions stockées dans plusieurs dossiers● répertoire local● répertoire distant (NFS / CIFS)● disques en RAID● « HA Solution »● Virtualisation du NameNode
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Flux décriture dun fichier dans HDFS● Lister les DataNodes où seront placés lesrépliquas des blocs● Ecrire le bloc sur le 1er DataNode● Le 1er DataNode fournit les données auDataNode suivant de la liste● Quand tous les répliquas du bloc sont inscrits,on passe au bloc suivant pour le fichier
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Secondary NameNode● copie FsImage and Transactions depuis leNameNode vers répertoire temporaire● Merge le FsImage et Transactions vers desnouveaux● Transfert le nouveau FsImage vers leNameNode● Suppression des traces des Transactions duNameNode
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Quelques commandes pour HDFSIl y a près de 30 commandes pour manipuler les fichiers en HDFS :-cat : affiche le contenu dun fichier-text : comme cat mais sait afficher des données compressées-chgrp,-chmod,-chown : modification des permissions-put,-get,-copyFromLocal,-copyToLocal : import / export entre lesystème de fichier local et HDFS-ls, -lsr : liste les fichiers / répertoires-mv,-moveFromLocal,-moveToLocal : déplace les fichiers-stat : informations statistiques sur les ressources (taille des blocs,nombre de blocs, type de fichiers, etc.)
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’Utilisation Commerciale- Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/Quelques commandes pour HDFS$ hadoop fs –ls /user/brian/$ hadoop fs -lsr$ hadoop fs –mkdir notes$ hadoop fs –put ~/training/commands.txt notes$ hadoop fs –chmod 777 notes/commands.txt$ hadoop fs –cat notes/commands.txt | more$ hadoop fs –rm notes/*.txt
    • Ce support est mis à disposition selon les termes de la Licence Creative Commons Attribution - Pas d’UtilisationCommerciale - Pas de Modification 2.0 France. - http://creativecommons.org/licenses/by-nc-nd/2.0/fr/HUG France SL2013 – Mai 2013Introduction à HDFSMerci !Charly CLAIRMONTAltic - http://altic.orgcharly.clairmont@altic.org@egwada