±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚ¼òÊ飬±¾ÎÄÖ÷Òª½éÉÜΪʲôÐèÒª·Ö²¼Ê½ÎļþϵͳÒÔ¼°HDFS¶ÔÎļþµÄ´æ´¢¶ÁÈ¡ºÍÈçºÎʹÓÃHDFS£¬Ï£Íû¶ÔÄúµÄѧϰÓÐËù°ïÖú¡£
|
|
HDFS×÷ΪHadoopµÄºËÐIJ¿·Ö£¬ÊÇHadoopÖÐMapReduce¿ò¼ÜµÄ´æ´¢²ã¡£
1¡¢ÎªÊ²Ã´ÐèÒª·Ö²¼Ê½Îļþϵͳ
µ±ÎļþµÄ´óС³¬¹ýÁ˵¥Ì¨¼ÆËã»úµÄ´æ´¢ÄÜÁ¦Ê±£¬¾ÍÐèÒª½«Æä·ÖÇø´æ´¢ÔÚ²»Í¬µ¥¶ÀµÄ¼ÆËã»úÉÏ¡£

·Ö²¼Ê½Îļþϵͳ¸ÅÄîͼÎļþϵͳµÄÈý¸öÖ÷Òª×é³É²¿·Ö£º±»¹ÜÀíµÄÎļþ¡¢Îļþ¹ÜÀíÏà¹ØÈí¼þ¡¢ÊµÊ©Îļþ¹ÜÀíËùÐèÒªµÄÊý¾Ý½á¹¹
½«Îļþ·Ö²¼Ê½´æ´¢ºó´øÀ´µÄÎÊÌ⣺Îļþ²»ÍêÕû£¬ÏµÍ³¸´ÔӶȼӴó£¬ÒýÈëÍøÂç±à³Ì

2¡¢HDFS¶ÔÎļþµÄ¶ÁÈ¡·½Ê½£ºÁ÷´¦Àí·ÃÎÊģʽ

HDFSÒÔÁ÷´¦Àí·ÃÎÊģʽÀ´´æ´¢ÎļþʲôÊÇÁ÷´¦Àí·ÃÎÊÄ£Ê½ÄØ£¿ÎªÊ²Ã´·Ö²¼Ê½Îļþϵͳ³¡¾°ÏÂÕâÖÖÎļþ·ÃÎÊģʽ¸üºÏÊÊ£¿
²Ù×÷ϵͳÖÐÎļþ·ÃÎÊ·½Ê½Óкü¸ÖÖ£¬³£¼ûµÄÊÇËæ»úÊý¾Ý·ÃÎÊ·½Ê½£¬ÕâÖÖ·½Ê½ÒªÇóÎļþ¶¨Î»¡¢²éѯ»òÕßÐÞ¸ÄÊý¾ÝµÄÑӳٱȽÏС£¬±È½ÏÊʺϳ£¼ûÊý¾Ýºó¶à´Î²éѯ¡¢¶ÁдµÄ³¡¾°£¬´«Í³¹ØÏµÐÍÊý¾Ý¿â·Ç³£·ûºÏÕâÒ»µã¡£
´óÊý¾Ý³¡¾°Óë¹ØÏµÏµÊý¾Ý¿âµÄ³¡¾°Óзdz£´óµÄ²»Í¬¡£´óÊý¾ÝµÄÊý¾ÝԴͨ³£ÓÉÔ´Éú³É»ò´ÓÊý¾ÝÔ´Ö±½Ó¸´ÖƶøÀ´£¬½Ó×ų¤Ê±¼äÔÚ´ËÊý¾Ý¼¯ÉϽøÐи÷Àà·ÖÎö£¬²»ÐèÒª°áÀ´°áÈ¥£»ÕâÖÖÊý¾Ý·ÃÎʳ¡¾°ÊǵäÐ͵ÄÒ»´ÎдÈ룬¶à´Î¶ÁÈ¡µÄ³¡¾°£¨Ð´ÈëÊý¾ÝÖ»ÐèÒªÉú³ÉÊý¾ÝµÄÄÇÒ»´Î£¬»ù±¾Ã»ÓÐÐÞ¸ÄÊý¾ÝµÄÒªÇ󣬺óÃæ¾ÍÊǶà´Î¶ÁÈ¡ÒÔ·ÖÎö£©£¬ËùÒÔÕâÖÖ³¡¾°ÏµÄÊý¾Ý·ÃÎÊ·½Ê½¸üÊʺϲÉÓÃÁ÷´¦Àí·½Ê½¡£
Á÷´¦ÀíÊý¾Ý·ÃÎÊ·½Ê½ÊÔ´ÅÅÌѰַ¿ªÏú×îС»¯£ºÖ»ÐèÒªÒ»´ÎѰַ£¨ÆðʼµØÖ·£©£¬È»ºó¾ÍÊÇÁ¬ÐøµÄÁ÷ʽ¶ÁÈ¡¡£Ó²Å̵ÄÎïÀí¹¹Ôìµ¼ÖÂѰַ¿ªÏúµÄÓÅ»¯¸ú²»É϶ÁÈ¡¿ªÏú£¬ËùÒÔÁ÷ʽ¶ÁÈ¡¸ü¼ÓÊʺÏÓ²Å̵ı¾ÉíÌØÐÔ£¬µ±È»´óÎļþµÄÌØµãÒ²¸üÊʺÏÁ÷ʽ¶ÁÈ¡¡£

Á÷´¦ÀíÄ£ÐÍ£º HDFS´æ´¢µÄÊý¾Ý¼¯×÷ΪHadoopµÄ·ÖÎö¶ÔÏó¡£ÔÚÊý¾Ý¼¯Éú³Éºó£¬³¤Ê±¼äÔÚ´ËÊý¾Ý¼¯ÉϽøÐи÷ÖÖ·ÖÎö¡£Ã¿´Î·ÖÎö¶¼½«Éè¼Æ¸ÃÊý¾Ý¼¯µÄ´ó²¿·ÖÊý¾ÝÉõÖÁÈ«²¿Êý¾Ý£¬Òò´Ë¶ÁÈ¡Õû¸öÊý¾Ý¼¯µÄʱ¼äÑӳٱȶÁÈ¡µÚÒ»Ìõ¼Ç¼µÄʱ¼äÑÓ³Ù¸üÖØÒª
HDFSÊÇÓÃÁ÷´¦Àí·½Ê½´¦ÀíÎļþ£¬Ã¿¸öÎļþÔÚϵͳÀï¶¼ÄÜÕÒµ½ËüµÄ±¾µØ»¯Ó³Ïñ£¬ËùÒÔ¶ÔÓÚÓû§À´Ëµ£¬²»ÓùØÐÄÎļþÊÇʲô¸ñʽµÄ£¬Ò²²»ÓÃÔÚÒâ±»·Öµ½ÄÄÀֻ¹Ü´ÓHDFSÀïÈ¡³ö¾Í¿ÉÒÔÁË¡£
3¡¢HDFS¶ÔÎļþµÄ´æ´¢·½Ê½£º·ÖƬÈßÓà´æ´¢
ѹËõ´æ´¢
ÏÈ˵һ˵ѹËõ´æ´¢¡£
ÔÚ´æ´¢×ÊÔ´ÎÞ·¨Âú×ãÊý¾ÝÁ¿Ôö³¤Ê±£¬ÐèÒª¶ÔÊý¾ÝѹËõºóÔÙ´æ´¢£¬Öظ´Êý¾Ýɾ³ý¼¼ÊõÊÇÎÞËðѹËõµÄ¼¼ÊõÖ®Ò»£¬ËüµÄ»ù±¾ÔÀíÊǶÔÄ¿±êÎļþ·Ö¿é£¬È»ºóÒÔ¿éΪµ¥Î»½øÐÐÖØ¸´ÄÚÈݵıȶԣ¬Èô·¢ÏÖÄÚÈÝÏàͬµÄÊý¾Ý¿é£¬Ö»ÔÚ´æ´¢½éÖÊÉÏ´æ·ÅÒ»·Ý£¬²¢¼Ç¼Ïà¹ØÂß¼¹ØÏµ£¬´Ó¶ø¼õÉÙʵ¼Ê´æ´¢¿ªÏú¡£
ÕâÖÖÊý¾ÝѹËõ·½Ê½Ó°ÏìÊý¾ÝµÄ°²È«ÐԺͿÉÓÃÐÔ£¬ÈçÏÂͼ£º

Êý¾Ýµ¥Ôª2Ö»ÊôÓÚÎļþC£¬Òò´ËÊý¾Ýµ¥Ôª2¹ÊÕÏÖ»»áÓ°ÏìÎļþC£»¶øÊý¾Ýµ¥Ôª5ͬʱÊôÓÚ4¸öÎļþ£¬Ëü¹ÊÕÏÁË»áͬʱӰÏì4¸öÎļþ²»ÄÜÕý³£Ê¹Óá£
ÈßÓà´æ´¢
ΪÁ˱£Ö¤·Ö²¼Ê½´æ´¢ºóµÄÎļþ¾ßÓи߿ÉÓÃÐÔ£¬²ÉÓÃÈßÓà´æ´¢ÕâÖÖÈÝ´í²ßÂÔ¡£³£Óõķ½·¨ÊÇÊý¾Ý¸´ÖƼ¼Êõ¡¢¾ÀɾÂë¼¼Êõ¡£
/ Êý¾Ý¸´ÖƼ¼Êõ /
Êý¾Ý¸´ÖƼ¼ÊõÊǸ±±¾ÈßÓà²ßÂÔ£¬¶Ô´æ´¢ÏµÍ³ÖеÄÊý¾Ý¿é½øÐжദ¸±±¾±£´æ£¨´æ´¢¿ªÏúÏà¶Ô½Ï´ó£©¡£
¾ÍÊý¾Ý¶øÑÔ£¬HDFS²ÉÓÃÿ·ÝÊý¾Ý3¸±±¾µÄ·½Ê½£¬±£Ö¤Ä³Ð©Êý¾ÝËðʧ֮ºóÈÔÄܼÌÐøÊ¹Óá£

/ ¾ÀɾÂë¼¼Êõ /
Êý¾ÝµÄÈÝ´í³ýÁ˸±±¾»¹ÓÐÁíÒ»ÖÖ×ö·¨£¬¾ÍÊǰѶªÊ§µÄÊý¾Ý¼ÆËã³öÀ´¡£Õâ¾ÍÊǾÀɾÂëµÄ˼ÏëÁË¡£Ó븱±¾Ïà±È£¬¾ÀɾÂëµÄÓŵãÔÚÓÚ½ÚÊ¡´æ´¢¿Õ¼ä£¬È±µãÔÚÓÚÓмÆË㿪Ïú¶øÇÒÐÞ¸´ÐèÒªÒ»¶¨Ê±¼ä£¬¶ø¸±±¾ËðʧֻҪ¸´ÖƳöÀ´ËðʧµÄÊý¾Ý£¬Î´ËðʧµÄÊý¾Ý¿ÉÒÔ¼ÌÐøÌṩ·þÎñ¡£
¼òµ¥ÔÀí£º¾ÀɾÂ루erasure coding£¬EC£©¼¼ÊõÊǽ«Êý¾Ý¿é·ÖΪm¸öÊý¾Ý¿é£¬È»ºóͨ¹ý±àÂëÈßÓàÀ©Õ¹ÖÁn¸öÊý¾Ý¿é£¨n>m£©£¬Õân¸öÊý¾Ý¿éÖÐÓÐ
k=n-m ¸öÊÇУÑé¿é£¬Èç¹ûm¸öÊý¾Ý¿éÖÐÈÎÒâÒ»¸ö¶ªÊ§ÁË£¬¿ÉÒÔͨ¹ýk¸öУÑé¿é¼ÆËã»Ö¸´³öÀ´£¬ÕâÒ²ÊÇÒ»ÖÖÈßÓà´æ´¢²ßÂÔ£¬²»¹ýÏà±È¸±±¾¼¼Êõ¶øÑÔ¸ü¼Ñ½ÚÊ¡´æ´¢¿Õ¼ä
[4]¡£
¾ÀɾÂë¿ÉÒÔÓÃÓÚÓдóÁ¿Êý¾ÝºÍÈκÎÐèÒªÈÝ´íµÄÓ¦ÓóÌÐò»òϵͳÖУ¬±ÈÈç´ÅÅÌÕóÁÐϵͳ¡¢Êý¾ÝÍø¸ñ¡¢·Ö²¼Ê½´æ´¢Ó¦ÓóÌÐò¡¢¶ÔÏó´æ´¢»ò¹éµµ´æ´¢¡£Ä¿Ç°£¬¾ÀɾÂëµÄÒ»¸ö³£¼ûµÄʹÓð¸ÀýÊÇ»ùÓÚ¶ÔÏóµÄÔÆ´æ´¢¡£
4¡¢HDFS¶ÔÎļþµÄУÑ鷽ʽ£º·ÖƬÈßÓ࣬±¾µØÐ£Ñé
·Ö²¼Ê½Îļþϵͳ¸ºÔðÊý¾Ý·Ö²¼´æ´¢ºÍÊý¾Ý¹ÜÀí£¬²¢Ìṩ¶ÔÊý¾Ý¸ßÍÌÍÂÁ¿·ÃÎʵÄÐÔÄÜ¡£Ö÷Òª¹¦ÄܳýÁ˶Áд²Ù×÷Ö®Í⣬»¹ÓÐÒ»¸ö¾ÍÊÇÊý¾ÝУÑ鹦ÄÜ£¬´Ë¹¦ÄÜÔÚÊý¾Ý¶Áд¹ý³ÌÖж¼»áÔËÓõ½¡£ËüÊÇÊý¾ÝÍêÕûÐÔµÄÁ¼ºÃ±£ÕÏ¡£·Ö²¼Ê½ÎļþϵͳÔÚ¶ÁдÊý¾Ýʱ¶Áȡһ¸öÎļþ¿é¿ÉÄÜÓÉÓÚ´æ´¢É豸¡¢ÍøÂç»òÕßÈí¼þµÄȱÏݵÈÔÒò¶ø³öÏÖË𻵵ÄÇé¿ö¡£¶ÔÓÚ´óÊý¾Ý´¦Àí£¬Ô±¾¸´ÔÓ·±ÖصļÆËãÈÎÎñÔÙ¼ÓÉÏÊý¾ÝУÑé¹ý³Ì»á¸ø·Ö²¼Ê½Îļþϵͳ´øÀ´¶îÍ⸺µ££¬¶ÁдËÙÂÊÒ²»áËæÖ®ÓÐËùϽµ£¬Õâ¾ÍÐèÒª½¨Á¢Ò»¸öÍêÕûµÄÌåϵ£¬ÔÚ±£Ö¤Êý¾ÝÍêÕûµÄÇé¿öϾ¡Á¿¼õСÒòΪÊý¾ÝУÑé¶ø¸øÏµÍ³´øÀ´µÄÓ°Ïì¡£
HDFSµÄ½â¾ö·½°¸ÊÇ·ÖÆ¬ÈßÓ࣬±¾µØÐ£Ñ飻Êý¾ÝÈßÓàʽ´æ´¢£¬Ö±½Ó½«¶à·ÝµÄ·ÖƬÎļþ½»¸ø·ÖƬºóµÄ´æ´¢·þÎñÆ÷ȥУÑ飻ÈßÓàºóµÄ·ÖƬÎļþ»¹Óиö¶îÍ⹦ÄÜ£¬Ö»ÒªÈßÓàµÄ·ÖƬÎļþÖÐÓÐÒ»·ÝÊÇÍêÕûµÄ£¬¾¹ý¶à´ÎÐͬµ÷Õûºó£¬ÆäËû·ÖƬÎļþÒ²½«ÍêÕû¡£
DFSͨ¹ýCheckSumºÍDataBlockScannerÁ½ÖÖ·½Ê½Í¬Ê±À´±£Ö¤±£´æÔÚÊý¾Ý½ÚµãÉϵÄÊý¾ÝʱÍêÕûµÄ¡£HDFSÖеÄDataNodeÔÚ±¾µØÎļþϵͳ´æ´¢Êý¾Ý¿éµÄÔªÊý¾ÝÓÃÓÚCRCУÑé¡£¶ÔÓÚÿһ¸ö¿é£¬ÏòDataNodeÇëÇóchecksumÐÅÏ¢£¬·µ»ØµÄÐÅÏ¢ÖаüÀ¨¿éµÄËùÓÐchecksumµÄMD5ÕªÒª£¬Èç¹ûÏòÒ»¸öDataNodeÇëÇóʧ°Ü£¬»áÏòÁíÒ»DataNodeÇëÇó£¬×îºó½«ËùÓпéµÄMD5ºÏ²¢£¬²¢¼ÆËãÕâЩÄÚÈݵÄMD5ÕªÒª¡£[5]
5¡¢HDFSµÄ¸ÅÄî
HDFS¿ÉÒÔÓÃÏÂÃæÕâ¸ö³éÏóͼµÄ¾ßÌåʵÏÖ£º

ºÎΪԪÊý¾Ý
ÔªÊý¾ÝÊÇÓÃÓÚÃèÊöÒªËØ¡¢Êý¾Ý¼¯»òÊý¾Ý¼¯ÏµÁеÄÄÚÈÝ¡¢¸²¸Ç·¶Î§¡¢ÖÊÁ¿¡¢¹ÜÀí·½Ê½¡¢Êý¾ÝµÄËùÓÐÕß¡¢Êý¾ÝµÄÌṩ·½Ê½µÈÓйصÄÐÅÏ¢¡£¸ü¼òµ¥µÄ˵£¬ÊǹØÓÚÊý¾ÝµÄÊý¾Ý¡£

¿éÓë¿é´óСµÄÉèÖÃ
¿éÊÇÎļþ´æ´¢´¦ÀíµÄÂß¼µ¥Ôª¡£
´ÅÅÌ´æ´¢Îļþʱ£¬Êǰ´ÕÕÊý¾Ý¿éÀ´´æ´¢µÄ£¬Ò²¾ÍÊÇ˵£¬Êý¾Ý¿éÊÇ´ÅÅ̵ĶÁ/д×îСµ¥Î»¡£Êý¾Ý¿éÒ²³Æ´ÅÅ̿顣¹¹½¨ÓÚµ¥¸ö´ÅÅÌÉϵÄÎļþϵͳÊÇͨ¹ý´ÅÅÌ¿éÀ´¹ÜÀíÎļþϵͳ£¬Ò»°ãÀ´Ëµ£¬Îļþϵͳ¿éµÄ´óСÊÇ´ÅÅÌ¿éµÄÕûÊý±¶¡£ÌرðµÄ£¬µ¥¸ö´ÅÅÌÎļþϵͳ£¬Ð¡ÓÚ´ÅÅÌ¿éµÄÎļþ»áÕ¼ÓÃÕû¸ö´ÅÅ̿顣´ÅÅÌ¿éµÄ´óСһ°ãÊÇ512×Ö½Ú¡£
ÔÚHDFSÖУ¬Ò²Óп飨block£©Õâ¸ö¸ÅÄĬÈÏΪ64MB£¬Ã¿¸ö¿é×÷Ϊ¶ÀÁ¢µÄ´æ´¢µ¥Ôª¡£

ÓëÆäËûÎļþϵͳ²»Ò»Ñù£¬HDFSÖÐÿ¸öСÓÚ¿é´óСµÄÎļþ²»»áÕ¼¾ÝÕû¸ö¿éµÄ¿Õ¼ä¡£
HDFSΪʲôʹÓôó¿é
£¨1£©¼õÉÙNameNodeµÄѹÁ¦
NameNodeÓÃÀ´´æ´¢hdfsÉÏÎļþµÄÔªÊý¾ÝÐÅÏ¢£¬Èç¹ûÊÇСÎļþ£¬»áµ¼Ö²úÉú´óÁ¿µÄÔªÊý¾ÝÐÅÏ¢¡£HDFSÖÐÿ¸öÎļþ¡¢Ä¿Â¼ºÍÊý¾Ý¿éµÄ´æ´¢ÐÅÏ¢´óÔ¼ÔÚ150×Ö½Ú£¬Èç¹û´óÁ¿Ð¡Îļþ»áµ¼ÖÂNameNodeÄÚ´æ²»¹»Óá£
£¨2£©×îС»¯Ñ°Ö·Ê±¼ä
Èç¹û¿éÉèÖõÄ×ã¹»´ó£¬´Ó´ÅÅÌ´«ÊäÊý¾ÝµÄʱ¼ä»áÃ÷ÏÔ´óÓÚ¶¨Î»Õâ¸ö¿é¿ªÊ¼Î»ÖÃËùÐèÒªµÄʱ¼ä£¬Òò¶ø£¬´«ÊäÒ»¸öÓɶà¿é×é³ÉµÄÎļþʱ¼äÈ¡¾öÓÚ´«ÊäËÙÂÊ£¨Ñ°Ö·Ê±¼ä¿ÉºöÂÔ²»¼Æ£©¡£
T(´æ´¢Ê±¼ä)=T(¶¨Î»Ê±¼ä)+T(´«Êäʱ¼ä)
Èç¹ûÿ¸öÒª´«ÊäµÄ¿éÉèÖõÃ×ã¹»´ó£¬ÄÇô´Ó´ÅÅÌ´«ÊäÊý¾ÝµÄʱ¼ä¿ÉÒÔÃ÷ÏÔ´óÓÚ¶¨Î»Õâ¸ö¿é¿ªÊ¼Î»ÖõÄʱ¼ä
T(´æ´¢Ê±¼ä)=T(¶¨Î»Ê±¼ä) )[-¡Þ]+T(´«Êäʱ¼ä)[¡Þ]
½üËÆµÈÓÚ£ºT(´æ´¢Ê±¼ä)=T(´«Êäʱ¼ä)
Èç¹ûÎÒÃÇÉèÖõĿé¹ýС£¬ÄÇôһ¸öÎļþ¾ÍÊDzúÉúºÜ¶àµÄ¿é£¬µ±ÎÒÃÇÒª¶Ô¿é½øÐвÙ×÷µÄʱºò£¬¾Í»á²úÉúºÃ¶à´ÎµÄѰַ£¬ÕâÑù¾Íµ¼ÖÂÁËѰַµÄʱ¼ä»áºÜ³¤¡£
µ±Ñ°Ö·Ê±¼ä±Èio»¹³¤µÄʱºò£¬Ñ°Ö·Ê±¼ä¾Í³ÉΪÁËÆ¿¾±¡£ËùÒÔ£¬ºÏÀíÉèÖôóСÄÜÌá¸ßÍÌÍÂÁ¿¡£
£¨3£©¿éµÄ´óСҲ²»ºÏÊÊÌ«´ó
HDFSÌṩ¸øMapReduceÊý¾Ý·þÎñ£¬¶øÒ»°ãÀ´ËµMapReduceµÄMapÈÎÎñͨ³£Ò»´Î´¦ÀíÒ»¸ö¿éÖеÄÊý¾Ý£¬Èç¹ûÈÎÎñÊýÌ«ÉÙ£¨ÉÙÓÚ¼¯ÈºÖнڵãµÄÊýÁ¿£©£¬¾ÍûÓз¢»Ó¶à½ÚµãµÄÓÅÊÆ£¬ÉõÖÁ×÷ÒµµÄÔËÐÐËٶȾͻáºÍµ¥½ÚµãÒ»Ñù£¬Èç¹û¿éÉèÖõÄÌ«´ó£¬¾ÍÎÞ·¨³ä·ÖÀûÓò¢ÐеÄÌØÐÔ¡£
·Ö²¼Ê½µÄÎļþ³éÏóÄܹ»´øÀ´µÄÓÅÊÆ
Ò»¸öÎļþ¿ÉÒÔ´óÓÚÿ¸ö´ÅÅÌ
Îļþ²»ÓÃÈ«ÔÚÒ»¸ö´ÅÅÌÉÏ
¼ò»¯ÁË´æ´¢×ÓϵͳµÄÉè¼Æ
»ùÓÚÔªÊý¾Ý¿éµÄ´æ´¢·½Ê½·Ç³£ÊʺÏÓÃÓÚ±¸·Ý£¬ÀûÓñ¸·Ý¿ÉÌṩÊý¾ÝÈÝ´íÄÜÁ¦ºÍ¿ÉÓÃÐÔ
HDFSÖеÄÁ½Àà½Úµã£¨node£©

NameNode
ÊǹÜÀí½Úµã£¬´æ·ÅÎļþÔªÊý¾Ý£º
£¨1£©ÎļþÓëÊý¾Ý¿éµÄÓ³Éä±í
£¨2£©Êý¾Ý¿éÓëÊý¾Ý½áµãµÄÓ³Éä±í
¿Í»§¶Ë¶ÁÈ¡Êý¾Ý֮ǰ£¬ÏÈ´ÓNameNodeÖжÁȡԪÊý¾Ý£¬´Ó¶øµÃÖªÎļþ´æ·ÅÔÚÄÇЩDataNodeÉϵģ¬ÔÙ´ÓÊý¾Ý½ÚµãÖÐÄõ½Êý¾Ý¿é£¬Æ´×°³ÉÏëÒªµÄÎļþ¡£
DataNode
Êǹ¤×÷½Úµã£¬´æ·ÅÊý¾Ý¿é
ÐÄÌø¼ì²â
NameNodeºÍDataNodeÖ®¼äÓÐÐÄÌøÐÒ飬DataNode¶¨ÆÚÏòNameNode»ã±¨×ÔÉí×´¿ö£¬ÊÇ·ñ´¦ÓÚactive״̬¡¢ÍøÂçÊÇ·ñÕý³£¡¢»úÆ÷ÊÇ·ñÕý³£ÔËÐÐ
Secondary NameNode£¨¶þ¼¶NameNode£©
¶þ¼¶NameNode²¢²»ÊÇNameNodeµÄ±¸·Ý£¬¶¨ÆÚͬ²½ÔªÊý¾ÝÓ³ÏñÎļþ£¨fsimage£©ºÍÐÞ¸ÄÈÕÖ¾£¨edit
logs£©µÄ£¬Ïê¼û£ºSecondary NameNode:Ëü¾¿¾¹ÓÐʲô×÷Óã¿
Secondary NameNodeµÄÕû¸öÄ¿µÄÊÇÔÚHDFSÖÐÌṩһ¸ö¼ì²éµã¡£ËüÖ»ÊÇNameNodeµÄÒ»¸öÖúÊֽڵ㡣ÕâÒ²ÊÇËüÔÚÉçÇøÄÚ±»ÈÏΪÊǼì²éµã½ÚµãµÄÔÒò¡£
HDFSÖÐÎļþ¶ÁдµÄÁ÷³Ì
¶ÁÎļþÁ÷³Ì

HDFSÎļþ¶ÁÈ¡Á÷³Ì
£¨1£©¿Í»§¶Ë£¨java/shell/...£©·¢ÆðÎļþ¶ÁÈ¡ÇëÇ󣬽«ÎļþÃû¡¢Â·¾¶¸æÖªNameNode£»
£¨2£©NameNode²éѯ²¢·µ»ØÔªÊý¾Ý¸ø¿Í»§¶Ë£¬°üÀ¨¸ÃÎļþÔÚÄÄЩ¿éÖС¢ÕâЩ¿ìÒªÔÚÄÄЩ»úÆ÷ÖеÄÄÄЩDataNodeÖÐÈ¥ÕÒ£»
£¨3£©¿Í»§¶Ë¸ù¾ÝÐÅϢȥ¶Áblock£¬½«blockÏÂÔØÏÂÀ´ºó½øÐÐ×é×°£¬¶ÁÈ¡Íê³É¡£
дÎļþÁ÷³Ì

HDFSдÎļþÁ÷³Ì
£¨1£©½«Îļþ²ð·Ö³É¿é£¨¹Ì¶¨´óС64M£©£¬Í¨ÖªNameNode£»
£¨2£©NameNode½«µ±Ç°¿ÉÓò¢ÇÒ´óС·ûºÏµÄDataNodeÐÅÏ¢·µ»Ø£»
£¨3£©¿Í»§¶Ë½«blocksдÈëÏàÓ¦µÄDataNode£»
£¨4£©blockдÈëºó½øÐÐÁ÷Ë®Ï߸´ÖÆ£»
£¨5£©¸üÐÂÔªÊý¾Ý£»
£¨6£©Ã¿´Îдһ¸öblock
6¡¢HDFSµÄ¹Ø¼üÔË×÷»úÖÆ
HDFSÊÇ»ùÓÚÖ÷´Ó½á¹¹£¨master/slaver£©¹¹¼þ¡£

7¡¢ÈçºÎʹÓÃHDFS
HDFSÊÇÔÚ°²×°hadoop-0.20.2.tar.gz²¢³É¹¦ÅäÖú󼴿ÉʹÓá£ÎÞÂÛÊÇʹÓÃshell½Å±¾£¬»òÕßʹÓÃWEB
UI½øÐвÙ×÷£¬Ê¹ÓÃǰ±ØÐëµÃÃ÷°×HDFSµÄÅäÖ㬱ãÓÚ´æ´¢²Ù×÷»òÕß²Ù×÷ÓÅ»¯¡£
# lists the commands
supported by Hadoop shell
$bin/hdfs dfs -help
# displays more detailed help for a command
$bin/hdfs dfs -help command-name
bin/hadoop fs <==> bin/hdfs dfs
|
hadoop fs
This command is documented in the File System Shell
Guide. It is a synonym for hdfs dfs
when HDFS is in use£¨µ±HDFSÔÚʹÓÃʱ£¬hadoop fsºÍhdfs dfs ÊÇ¡°Í¬Òå´Ê¡±£©.
$hadoop fs -ls
/
$hadoop fs -put <file> <dest>
$hadoop fs -mkdir <file>
$... |
|