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

Like this? Share it with your network

Share

Introduction à HDFS

  • 2,697 views
Uploaded 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.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
2,697
On Slideshare
2,689
From Embeds
8
Number of Embeds
3

Actions

Shares
Downloads
68
Comments
0
Likes
0

Embeds 8

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

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