±à¼ÍƼö: |
±¾ÎÄÖ÷Òª½²½âÁËHDFS»ù´¡£¬HDFS¼Ü¹¹Ë¼Â·½âÎö¡¢HDFS×é³É¼Ü¹¹¡¢HDFSÊý¾ÝдÈë»úÖÆ¡¢HDFSÊý¾Ý¶ÁÈ¡»úÖÆµÈÄÚÈÝ¡£
±¾ÎÄÀ´×Ô΢ÐÅÕì²éÒ»Ïߣ¬ÓÉ»ðÁú¹ûÈí¼þAnna±à¼¡¢ÍƼö¡£ |
|
Hadoop°üº¬Èý´ó»ù±¾×é¼þ£º
HDFS¡ª¡ª·Ö²¼Ê½Îļþϵͳ£¬ÓÃÓÚÊý¾Ý´æ´¢
YARN¡ª¡ªÍ³Ò»×ÊÔ´¹ÜÀíºÍµ÷¶Èϵͳ£¬ÓÃÓÚ¹ÜÀí¼¯ÈºµÄ¼ÆËã×ÊÔ´²¢¸ù¾Ý¼ÆËã¿ò¼ÜµÄÐèÇó½øÐе÷¶È£¬Ö§³Ö°üº¬MapReduce¡¢Spark¡¢FlinkµÈ¶àÖÖ¼ÆËã¿ò¼Ü¡£MRv2(Hadoop
2.x)Ö®ºóµÄÐÂÌØÐÔ¡£
MapReduce¡ª¡ª·Ö²¼Ê½¼ÆËã¿ò¼Ü£¬ÔËÐÐÓÚYARNÖ®ÉÏ

ÕâÆªÎÄÕÂÖ÷ÒªÊǶÔHadoopÈý´ó»ù±¾×é¼þÖ®Ò»µÄHDFS½øÐÐÉîÈëµÄѧϰ¡£
Ò»¡¢HDFS¸ÅÊö
1.1 HDFS²úÉú±³¾°
Ëæ×ÅÊý¾ÝÁ¿Ô½À´Ô½´ó£¬ÔÚÒ»Ò»¸ö²Ù×÷ϵͳ´æ²»ÏÂËùÓеÄÊý¾Ý£¬ÄÇô¾Í·ÖÅäµ½¸ü¶àµÄ²Ù×÷ϵͳ¹ÜÀíµÄ´ÅÅÌÖУ¬µ«ÊDz»·½±ã¹ÜÀíºÍά»¤£¬ÆÈÇÐÐèÒªÒ»ÖÖϵͳÀ´¹ÜÀí¶ą̀»úÆ÷ÉϵÄÎļþ£¬Õâ¾ÍÊÇ·Ö²¼Ê½Îļþ¹ÜÀíϵͳ¡£HDFSÖ»ÊÇ·Ö²¼Ê½Îļþ¹ÜÀíϵͳÖеÄÒ»ÖÖ¡£
1.2 HDFS¶¨Òå
HDFS£¨Hadoop Distributed File System£©£ºÊÇHadoopµÄ·Ö²¼Ê½ÎļþϵͳµÄʵÏÖ¡£ËüµÄÉè¼ÆÄ¿±êÊÇ´æ´¢º£Á¿µÄÊý¾Ý£¬²¢Îª·Ö²¼ÔÚÍøÂçÖеĴóÁ¿¿Í»§¶ËÌṩÊý¾Ý·ÃÎÊ¡£
HDFSÊǸßÈÝ´íÐԵģ¬¿ÉÒÔ²¿ÊðÔڵͳɱ¾µÄÓ²¼þÖ®ÉÏ£¬HDFSÌṩ¸ßÍÌÍÂÁ¿µØ¶ÔÓ¦ÓóÌÐòÊý¾Ý·ÃÎÊ¡£
HDFSµÄʹÓó¡¾°£ºÊʺÏÒ»´ÎдÈ룬¶à´Î¶Á³öµÄ³¡¾°£¬ÇÒ²»Ö§³ÖÎļþµÄÐ޸ġ£ÊʺÏÓÃÀ´×öÊý¾Ý·ÖÎö£¬²¢²»ÊʺÏÓÃÀ´×öÍøÅÌÓ¦Óá£
1.3 HDFSÌØÐÔ
Äܹ»±£´æPB¼¶µÄÊý¾ÝÁ¿£¬½«Êý¾ÝÉ¢²¼ÔÚ´óÁ¿µÄ¼ÆËã»ú£¨½Úµã£©ÉÏ£¬Ö§³Ö¸ü´óµÄÎļþ¡£
ʹÓÃÊý¾Ý±¸·ÝµÄ·½·¨½â¾öÎļþ´æ´¢µÄ¿É¿¿ÐÔ£¬Èç¹û¼¯ÈºÖе¥¸ö½Úµã¹ÊÕÏÔòÆôÓñ¸·Ý¡£
ºÜºÃµÄÓëMap-Reduce¼¯³É£¬Îª¼õС¼ÆËãʱµÄÊý¾Ý½»»¥£¬HDFSÔÊÐíÊý¾ÝÔÚ±¾µØ¼ÆËã¡£
1.4 HDFS¾ÖÏÞÐÔ
Õë¶Ô¸ßËÙÁ÷ʽ¶ÁÈ¡½øÐÐÓÅ»¯£¬²éѯÐÔÄܵÍÏ£¨¿ÉÀûÓÃHive²éѯ£©
Ò»´ÎдÈë¶à´Î¶ÁÈ¡£¬²»Ö§³Ö²¢·¢Ð´È룬²¢·¢¶ÁÈ¡ÐÔÄܸܺß
²»Ö§³ÖÎļþÐÞ¸Ä
²»Ö§³Ö»º´æ£¬Ã¿´Î¶ÁÈ¡ÎļþÐë´ÓÓ²ÅÌÉÏÖØÐ¶ÁÈ¡£¬µ±È»¶ÔÓÚ´óÎļþ˳Ðò¶ÁÈ¡ÐÔÄÜÓ°Ïì²»´ó
²»Êʺϴ洢СÎļþ
¶þ¡¢HDFS¼Ü¹¹Ë¼Â·½âÎö
2.1 HDFS¼Ü¹¹Ë¼Â·½âÎö1
HDFSÊÇÒ»ÖÖ·Ö²¼Ê½Îļþϵͳ£¬½«Îļþ´æ´¢µ½²»Í¬µÄ¼ÆËã»ú½ÚµãÖС£ÈçºÎ½«Îļþ±£´æµ½²»Í¬½ÚµãÖУ¿

HDFSÊÇ»ùÓÚºÎÖÖ˼·À´Éè¼ÆÄ¿Ç°µÄ¼Ü¹¹£¿
2.2 HDFS¼Ü¹¹Ë¼Â·½âÎö2
½«Îļþ±£´æÔÚ²»Í¬µÄ½Úµã(Node)ÖУº

ÎÊÌ⣺ ¿É¿¿ÐԲ½ÚµãË𻵻ᵼÖ½ڵãÄÚÊý¾Ý¶ªÊ§¡£
½â¾ö·½°¸£¬½«Ò»·ÝÊý¾Ý±¸·Ýµ½¶à¸ö½Úµã¡£

²ÉÓÃÕâÖÖ·½·¨´æÔÚÒÔÏÂÁ½ÖÖÓŵ㣺
1¡¢¿É¿¿ÐԸߣ¬Ò»¸ö½Úµã»µµô£¬ÆôÓñ¸·Ý
2¡¢¶ÁÈ¡Ëٶȿ죬ͬһ·ÝÊý¾Ý¶à¸ö±¸·Ýͬʱ¶Á
ÄÇÓÖ´æÔÚʲô¾ÖÏÞÐÔÄØ£¿
´óÎļþ±£´æºÍ¶ÁÈ¡À§ÄÑ£¨È磺µ¥¸ö100GÎļþ£©¡£
2.3 HDFS¼Ü¹¹Ë¼Â·½âÎö3
½â¾ö·½°¸£º ½«ËùÓÐÎļþÒԹ̶¨´óС·Ö¸îΪ¿é(Block)£¬½ÚµãÖ»±£´æ¹Ì¶¨´óСµÄ¿é¡£

2.4 HDFS¼Ü¹¹Ë¼Â·½âÎö4
ÔÚ˼·½âÎö3Öл¹´æÔÚÊý¾Ý¶ÁÈ¡µÄÎÊÌâ
ÈçºÎÖªµÀϵͳÖÐÓÐÄÄЩÎļþ£¿
½ÚµãÖÐÖ»´æ´¢ÁËÎļþµÄBlock£¬ÎļþµÄÔʼÐÅÏ¢¶ªÊ§
ÈçºÎÖªµÀij¸öÔʼÎļþµÄBlock¶ÔÓ¦ÓÚÄÄЩ½Úµã£¿
Öð¸ö½ÚµãÈ¥²éÕÒ£¿
»¹Êǽ¨Á¢Ò»¸ö¹ÜÀí½Úµã£¬×¨ÃÅÀ´¹ÜÀí¸÷¸ö½ÚµãµÄÐÅÏ¢£¿
×îÖÕ½â¾ö·½°¸£º
´æ´¢Êý¾Ýʱ£¬½«ÎļþµÄÔʼÐÅÏ¢£¬ÒÔ¼°¶ÔÓ¦µÄBlockÐÅÏ¢´æ´¢µ½¡°¹ÜÀí½Úµã¡±Öб£´æ¡£
¶ÁÈ¡Êý¾Ýʱ£¬ÏȲéѯÔʼÎļþ¼Ç¼ºÍ¶ÔÓ¦µÄBlockÐÅÏ¢¾ÍÖªµÀ±¾ÏµÍ³ÓÐÄÄЩÔʼÎļþ£¬ÕâЩÎļþÓÐÄÄЩBlock£¬ÒÔ¼°ÕâЩBlock´æ´¢ÔÚÄÄЩ½ÚµãÖС£
Èý¡¢HDFS×é³É¼Ü¹¹
Ö÷´Óģʽ
Õû¸öHadoop±»¹¹½¨ÔÚ¼¯ÈºÉÏ£¬¼¯ÈºÓɸ÷¸ö½Úµã£¨Node£©¹¹³É¡£
½«¼¯ÈºÖеĽڵã·ÖΪNameNode£¨¹ÜÀíÕߣ©ºÍDataNode£¨¹¤×÷Õߣ©¡£
Îļþ±»²ð·ÖΪ¶à¸öBlock£¨¿é£©·Åµ½²»Í¬µÄDataNodeÖУ¬ÔÚHDFS 1.x ÖÐÿ¸ö¿éĬÈÏ´óСΪ64MB£¬HDFS
2.x ÖÐÿ¸ö¿éĬÈÏ´óСΪ128MB£¬Í¬Ò»¸ö¿é»á±¸·Ýµ½¶à¸öDataNodeÖд洢¡£
3.1 HDFS×é³É¼Ü¹¹½éÉÜ
HDFS×é³É¼Ü¹¹ÈçÏÂËùʾ£º

NameNode£¨nn£©£ºÒ²¾ÍÊÇMaster£¬ËüÊÇÒ»¸öÖ÷¹Ü¡¢¹ÜÀíÕß¡£Ê¹ÓÃNameNode´æ´¢ÔªÊý¾ÝÐÅÏ¢£¬±£´æÎļþÃûÒÔ¼°ÎļþµÄ¿é(Block)´æ´¢ÔÚÄÄЩDataNodeÖС£Ã¿¸ö´æ»îµÄDataNode¶¨Ê±ÏòNameNode·¢ËÍÐÄÌøÐÅÏ¢£¬Èç¹ûδÊÕµ½DataNodeµÄÐÄÌø£¬NameNode½«È϶¨ÆäÒÑʧЧ£¬²»ÔÙÏòÆäÅÉ·¢ÈκÎÎļþ¶ÁÇëÇó¡£NameNode»á½«Ê§Ð§µÄDataNodeÖеĿé(Block)±¸·Ýµ½ÆäËû´æ»îµÄDataNodeÖС£¼òµ¥À´Ëµ¾ÍÊÇ£º
£¨1£©¹ÜÀíHDFSµÄÃû³Æ¿Õ¼ä;
£¨2£©ÅäÖø±±¾²ßÂÔ;
£¨3£©¹ÜÀíÊý¾Ý¿é(Block) Ó³ÉäÐÅÏ¢;
£¨4£©´¦Àí¿Í»§¶Ë¶ÁдÇëÇó¡£
DataNode£º¾ÍÊÇSlave£¬NameNodeÏ´ïÃüÁDataNodeÖ´ÐÐʵ¼Ê²Ù×÷¡£
£¨1£©´æ´¢Êµ¼ÊµÄÊý¾Ý¿é
£¨2£©Ö´ÐÐÊý¾Ý¿éµÄ¶Á/д²Ù×÷
Client£º¾ÍÊǿͻ§¶Ë¡£
£¨1£©ÎļþÇз֡£ÎļþÉÏ´«HDFSµÄʱºò£¬ Client½«ÎļþÇзֳÉÒ» ¸ö¸öµÄBlock£¬ È»ºó½øÐÐÉÏ´«
£¨2£©ÓëNameNode½»»¥£¬»ñÈ¡ÎļþµÄλÖÃÐÅÏ¢
£¨3£©ÓëDataNode½»»¥£¬¶ÁÈ¡»òÕßдÈëÊý¾Ý
£¨4£©ClientÌṩһ ЩÃü ÁîÀ´¹ÜÀíHDFS,±ÈÈçNameNode¸ñʽ»¯
£¨5£©Client¿ÉÒÔͨ¹ýһЩÃüÁîÀ´·ÃÎÊHDFS,±ÈÈç¶ÔHDFSÔöɾ²é¸Ä²Ù×÷
Secondany NameNode£º²¢·ÇNameNodeµÄÈȱ¸¡£µ±NameNode¹ÒµôµÄʱºò£¬
Ëü²¢²»ÄÜÂíÉÏÌæ»»NameNode²¢Ìṩ·þÎñ¡£
£¨1£©¸¨ÖúNameNode,·Öµ£Æä¹¤×÷Á¿£¬±ÈÈ綨ÆŲ́²¢fsimageºÍedits,²¢ÍÆË͸øNameNode
;
£¨2£©ÔÚ½ô¼±Çé¿öÏ£¬¿É¸¨Öú»Ö¸´NameNode¡£
3.2 NamenodeµÄÔªÊý¾Ý¹ÜÀí»úÖÆ
Õû¸öϵͳµÄÔªÊý¾Ý¶¼±£´æÔÚNameNodeÖÐ
ÄÚ´æÔªÊý¾Ý£ºmeta data£¬ÓÃÓÚÔªÊý¾Ý²éѯ
Ó²ÅÌÔªÊý¾Ý¾µÏñÎļþ£ºfsimage£¬³Ö¾Ã»¯´æ´¢ÔªÊý¾Ý
Êý¾Ý²Ù×÷ÈÕÖ¾£ºedits£¬HDFSÎļþÔöɾ»áÔì³ÉÔªÊý¾Ý¸ü¸Ä£¬½«¸ü¸Ä¼Ç¼µ½edits£¬¿ÉÔËËã³öÔªÊý¾Ý
NameNodeÔªÊý¾Ý¹ÜÀí¹ý³Ì
ϵͳÆô¶¯Ê±£¬¶ÁÈ¡fsimageºÍeditsÖÁÄڴ棬ÐγÉÄÚ´æÔªÊý¾Ýmeta data¡£
clientÏòNameNode·¢ÆðÊý¾ÝÔöɾ²éÇëÇó
NameNode½ÓÊÕµ½ÇëÇóºó£¬ÔÚÄÚ´æÔªÊý¾ÝÖÐÖ´ÐÐÔöɾ²é²Ù×÷£¬²¢Ïòclient·µ»Ø²Ù×÷½á¹û¡£
Èç¹ûÊÇÔöɾ²Ù×÷£¬Ôòͬʱ¼Ç¼Êý¾Ý²Ù×÷ÈÕÖ¾edits¡£
ʹÓÃSecondary NameNode£¬ÔÚÊʵ±µÄʱ»ú½«²Ù×÷ÈÕÖ¾ºÏ²¢µ½fsimageÖУ¨CheckPoint¹ý³Ì£©
3.3 Èý¸öÎÊÌâ
Ϊʲô¿éµÄ´óС²»ÄÜÉèÖÃ̫С£¬Ò²²»ÄÜÉèÖÃÌ«´ó?
HDFSµÄ¿éÉèÖÃ̫С£¬»áÔö¼ÓѰַʱ¼ä£¬³ÌÐòÒ»Ö±ÔÚÕÒ¿éµÄ¿ªÊ¼Î»ÖÃ;
Èç¹û¿éÉèÖõÄÌ«´ó£¬´Ó´ÅÅÌ´«ÊäÊý¾ÝµÄʱ¼ä»áÃ÷ÏÔ´óÓÚ¶¨Î»Õâ¸ö¿é¿ªÊ¼Î»ÖÃËùÐèµÄʱ¼ä¡£µ¼Ö³ÌÐòÔÚ´¦ÀíÕâ¿éÊý¾Ýʱ£¬»á·Ç³£Âý¡£
×ܽá: HDFS¿éµÄ´óСÉèÖÃÖ÷Ҫȡ¾öÓÚ´ÅÅÌ´«ÊäËÙÂÊ¡£
ΪʲôÎļþ²Ù×÷²»Ö±½ÓдÈëfsimage£¬¶øÒªÐ´Èëµ¥¶ÀµÄeditsÎļþ£¿
fsimage¼Ç¼ÁËÕû¸ö´óÊý¾ÝϵͳµÄÔªÊý¾Ý£¬·Ç³£ÅÓ´ó
fsimageÊÇÒ»¸öÁ÷ʽµÄÎı¾Îļþ£¬ÐÂÔö¼Ç¼ֻÐèÔÚÎļþĩβÐÂÔöÊý¾Ý£¬Ëٶȿ죻ɾ³ý¼Ç¼ʱ£¬ÐèҪɾ³ýÎļþÖмäµÄijЩ¼Ç¼£¬ÎļþÔ½´óÖ´ÐÐЧÂÊÔ½µÍ
editsÎļþÒ»°ãºÜС£¬Í¨³£³¬¹ý64mb¾Í»á±»Ö´Ðкϲ¢£¬ÅúÁ¿ºÏ²¢µÄ²Ù×÷ЧÂÊ±ÈÆµ·±Ð޸ĸ߶àÁË
ΪʲôҪʹÓÃSecondary NameNodeºÏ²¢²Ù×÷ÈÕÖ¾£¿
Ìá¸ßÐÔÄÜ£ºNameNodeÊÇÎ¨Ò»ÃæÏòClientµÄ¹ÜÀí½Úµã£¬³ÐÊÜClientµÄ²¢·¢·ÃÎÊ£¬ÐÔÄܷdz£ÖØÒª£¬¶øºÏ²¢editsºÍfsimageÐèÒª½Ï´ó¼ÆËãÁ¿
Ìá¸ß¿É¿¿ÐÔ£ºSecondary NameNodeÔںϲ¢edits ºÍfsimageʱ£¬»á×öÊý¾Ý±¸·Ý£¬Èç¹ûNameNodeÖеÄfsimage¶ªÊ§£¬¿É´ÓSecondary
NameNode»Ö¸´
3.4 Checkpoint¹ý³Ì

SN(Secondary NameNode)ÏòNameNode(NN)·¢ÆðѯÎÊ£¬ÊÇ·ñÐèÒªcheckpoint
NN¶ÁÈ¡fstimeÖеÄÉÏ´Îcheckpointʱ¼ä£¬½áºÏeditsÎļþ´óСµÈÒòËØ£¬¾ö¶¨¿ªÊ¼checkpoint
NNн¨Ò»¸öeditsÎļþ(È磺edits.new)£¬ÈÃвÙ×÷дÈëµ½edits.newÖÐ(±ÜÃâÔÚcheckpoint¹ý³ÌÖУ¬edits·¢Éú¸Ä±ä)
SNÏòNNÇëÇó(httpÐÒé)»ñÈ¡fsimageºÍeditsÎļþ
SN½«editsÓëfsimageºÏ²¢£¬Éú³ÉеÄfsimage.checkpointÎļþ
SN½«fsimage.checkpoint·¢Ë͸øNN
NNÊÕµ½fsimage.checkpointºó£¬½«ÆäÓë¾ÉµÄfsimageÌæ»»£¬¸üÐÂfstimeÎļþ¼Ç¼±¾´Îcheckpoint²Ù×÷
3.5 NameNodeµ¥µã¹ÊÕϻָ´
NameNodeµ¥µã¹ÊÕϻᵼÖÂÕû¸öHadoop±ÀÀ£
ÀûÓÃSN(Secondary NameNode)µÄ±¸·Ý»Ö¸´NN (NameNode)ÔªÊý¾Ý
SNÓëNN²¢²»ÊÇʱ¿Ìͬ²½µÄ£¬checkpointÓÐʱ¼ä¼ä¸ô£¬Õâ»áµ¼Ö»ָ´ºóÓÐÊý¾Ý¶ªÊ§
NFS·½°¸(NFSÔÖ±¸)£¬¶ÔNNÖÐÔªÊý¾Ý½øÐм´Ê±±¸·Ý£¬±ÜÃâÔªÊý¾Ý¶ªÊ§
NSF(Network File System£¬ÍøÂçÎļþϵͳ)¿ÉÓëÍøÂçÖеÄÖ÷»úÏ໥´«ÊäÎļþ
NN¿ÉÅäÖÃNFSÔÖ±¸·þÎñÆ÷£¬ÔÚдÈëfsimage¡¢fstime¡¢edits¡¢edits.newµÈÎļþʱ£¬Í¬²½Ð´Èëµ½NSF·þÎñÆ÷ÖУ¬½ø¶ø±ÜÃâNNÊý¾Ý¶ªÊ§
HDFS¸ß¿ÉÓÃÐÔ
ÔÊÐíÅäÖÃÁ½¸öÏàͬµÄNameNodeÒ»¸öΪactive mode´¦Óڻģʽ£¬ÁíÒ»¸öΪstandby
mode´¦ÓÚ´ý»úģʽ
Á½¸öNameNodeÊý¾Ý±£³ÖÒ»Ö£¬Ò»µ©»î¶¯½ÚµãʧЧ£¬ÔòÓÉ´ý»ú½ÚµãÇл»Îª»î¶¯½Úµã£¬±£Ö¤HadoopµÄÕý³£ÔËÐÐ
Á½¸öNameNodeµÄ¹²Ïíͬһ¸öNFSÒÔ½øÐÐÊý¾Ýͬ²½
ËÄ¡¢HDFSÊý¾ÝдÈë»úÖÆ

0£ºNameNodeÐèҪͨ¹ýÐÄÌø»úÖÆÊÕ¼¯DataNodeµÄÉú´æ×´Ì¬ºÍ´æ´¢×´Ì¬£»ÓÃÒÔÔÚµÚ3²½Ê±£¬·ÖÅä×î¼ÑµÄblock´æ´¢Î»Öá£
Óû§¿Í»§¶ËÇëÇóHadoop¿Í»§¶Ë£¬²¢Ö´ÐÐÎļþÉÏ´«
ÉÏ´«µÄÎļþдÈëµ½Hadoop¿Í»§¶ËµÄÁÙʱĿ¼ÖУ¬Ã¿µ±Ð´ÈëµÄÊý¾ÝÁ¿Ô½¹ý¿é(block)±ß½çʱ(hadoop
1.xȱʡ64mb£¬hadoop2.xȱʡ128mb)£¬ÇëÇóNameNodeÉêÇëÊý¾Ý¿é
NameNodeÏòHadoop¿Í»§¶Ë·µ»ØblockµÄλÖÃ
Hadoop¿Í»§¶ËÖ±½Ó½«blockдÈëÖ¸¶¨µÄDataNode
Îå¡¢HDFSÊý¾Ý¶ÁÈ¡»úÖÆ

0£ºNameNodeÐèҪͨ¹ýÐÄÌø»úÖÆÊÕ¼¯DataNodeµÄÉú´æ×´Ì¬£»ÔÚµÚ3²½Ê±£¬²»»á½«Ê§Ð§µÄDataNodeλÖ÷µ»Ø¸ø¿Í»§¶Ë
Óû§¿Í»§¶ËÇëÇóHadoop¿Í»§¶Ë£¬ÇëÇó·µ»ØÖ¸¶¨Îļþ
Hadoop¿Í»§¶ËÏòNameNode·¢Æð¶ÁÎļþÇëÇó
NameNode²éѯmeta data²¢·µ»ØÎļþ¶ÔÓ¦µÄblockλÖÃ
Hadoop¿Í»§¶ËÖ±½ÓÏòDataNodeÇëÇóblockÊý¾Ý£¬»ñÈ¡µ½ËùÓÐblockºóºÏ²¢³ÉÎļþ
Áù¡¢Éæ¼°¸ÅÄ×ܽᣩ
Block
ËùÓеÄÎļþ½«±»²ð·ÖΪÈô¸Éblock(ȱʡÿ¸öblock´óСΪ64mb)£¬ÒÔ´æ·ÅÔÚ²»Í¬µÄDataNodeÖÐ(ÿ¸öblock½«ÓÐ3¸ö±¸·Ý±£´æµ½²»Í¬DataNode)
DataNode
ÓÃÓÚ´æ´¢block£¬ blockÒÔÎļþµÄÐÎÊ½Ëæ»ú´æ´¢ÔÚ¼¯ÈºµÄ¸÷¸öDataNodeÉÏ
DataNode²»ÖªµÀÊý¾ÝµÄÄÚÈÝ£¬ÌáÈ¡Êý¾ÝʱÎÞ·¨ÖªµÀÿ¸öBlock¸ÃÄĸöDataNodeÉÏÌáÈ¡£¬ÓÚÊÇÐèÒª¼Ç¼ÿ¸öBlock´æ´¢Ôں䦣¨NameNodeÉϵÄÔªÊý¾Ý£©¡£
NameNode
¼Ç¼ÎļþµÄÔªÊý¾Ý£¬NameNodeÖªµÀËùÓеÄÎļþ¶ÔÓ¦ÄÄЩBlockÒÔ¼°ÕâЩBlock¶¼´æ·ÅÔںδ¦
Óë¸÷¸öDataNodeͨÐŲ¢¹ÜÀíDataNode
ÔªÊý¾Ý£¨ Metadata £©
ÃèÊöÊý¾ÝµÄÊý¾Ý£¨data about data£©
°üº¬ÁË£ºÃ¿¸öÎļþµÄÎļþÃû¡¢ÎļþλÖᢷÃÎÊȨÏ޺͸÷¸ö¿éµÄÃû³ÆºÍλÖÃ
´óÁ¿Ð¡Îļþ»áÉú³É¹ý¶àÔªÊý¾Ý¼Ç¼£¬½µµÍNameNode²éѯЧÂÊ(СÎļþ¶¨Ò壺ԶԶСÓÚblock±ß½ç´óСµÄÎļþ)¡£
Àý£º64MbµÄÎļþ·ÖÅä1¸öblock£¬Õ¼ÓÃ1ÌõÔªÊý¾Ý¼Ç¼£»¶øÍ¬Ñù´óСµÄ1024¸ö64KbµÄÎļþ£¬Ðë·ÖÅä1024¸öblock£¬Õ¼ÓÃ1024ÌõÔªÊý¾Ý¼Ç¼
ÐÄÌø
NameNode¼Ç¼ÁËËùÓеÄDataNode£¬µ«Èç¹ûDataNodeͻȻʧЧ£¬NameNodeÐèҪѸËÙµÄÖªµÀ£»ÓÚÊÇÐèҪÿ¸öDataNode¶¨ÆÚ£¨Ä¬ÈÏÿ3Ã룩ÏòNameNode·¢ËÍÐÄÌøÐÅÏ¢
¿Í»§¶Ë(Client)
´ú±íÓû§Í¨¹ýÓëNameNodeºÍDataNode½»»¥À´·ÃÎÊÕû¸öÎļþϵͳ.
|