Your SlideShare is downloading. ×
Introduction à HDFS
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Introduction à HDFS

3,166
views

Published on

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.


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,166
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
129
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 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
  • 2. 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
  • 3. 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!
  • 4. 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
  • 5. 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
  • 6. 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
  • 7. 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
  • 8. 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
  • 9. 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
  • 10. 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...
  • 11. 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
  • 12. 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)
  • 13. 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
  • 14. 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
  • 15. 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
  • 16. 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
  • 17. 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
  • 18. 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.)
  • 19. 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
  • 20. 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