Znn3bq.jpeg
±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 548  |  »Ø¸´: 0

ÐÂÊÖÒÑÉÏ·

ľ³æ (Ö°Òµ×÷¼Ò)

[½»Á÷] HadoopѧϰÀú³Ì

1. Hadoop FS Shell
HadoopÖ®ËùÒÔ¿ÉÒÔʵÏÖ·Ö²¼Ê½¼ÆË㣬Ö÷ÒªµÄÔ­ÒòÖ®Ò»ÊÇÒòΪÆä±³ºóµÄ·Ö²¼Ê½Îļþϵͳ£¨HDFS£©¡£ËùÒÔ£¬¶ÔÓÚHadoopµÄÎļþ²Ù×÷ÐèÒªÓÐÒ»Ì×ȫеÄshellÖ¸ÁîÀ´Íê³É£¬¶øÕâ¾ÍÊÇHadoop FS Shell¡£ËüÖ÷ÒªÊÇÓÃÓÚ¶ÔHadoopƽ̨½øÐÐÎļþϵͳµÄ¹ÜÀí¡£
ÓйØHDFSµÄ½éÉܲ©¿ÍÇëÒÆ²½£ºHadoopѧϰ±Ê¼ÇÖ®Hadoop»ù´¡¡£
ÓйØHadoop FS ShellµÄѧϰÎĵµ£ºHadoop FS ShellѧϰÎĵµ¡£
2. Hadoop Streaming
ÎÒÃÇÖªµÀHadoop¼¯ÈºÉϵÄһЩMapReduce´úÂëÒ»°ãÊÇÀûÓÃJavaÀ´½øÐпª·¢µÄ£¬ÄÇô¶ÔÓںܶàÏñ²©Ö÷Ò»ÑùµÄ²»»áJavaµÄͬѧ¸ÃÔõô°ìÄØ£¬ÊDz»ÊÇÎÒÃDZØÐëÒªÔÚʹÓÃHadoop֮ǰҪѧ»áJavaÄØ£¿µ±È»£¬Èç¹ûJava¶ÔÄãûÓÐʲô°ïÖúµÄ»°£¬ÄãÊÇÍêȫûÓбØÒª¶îÍâΪÁËHadoopÀ´Ñ§Ï°JavaµÄ¡£Hadoop Streaming¾ÍÊÇHadoopΪÁ˰ïÖúÓû§´´½¨ºÍÔËÐÐÒ»Ð©ÌØÊâµÄmap/reduce×÷Òµ¶ø¿ª·¢µÄÒ»¸ö¹¤¾ß£¬Ëü¿ÉÒÔ±»¿´×öÊÇÒ»¸öAPI£¬¿ÉÒÔʹÓû§ºÜ·½±ãµØÀûÓÃһЩ½Å±¾ÓïÑÔ£¨±ÈÈ磬bash shell»òÕßPython£©À´Ð´MapperºÍReducer¡£
ÏÂÃæÊÇHadoop StreamingµÄѧϰÎĵµ£ºHadoop StreamingѧϰÎĵµ¡£
3. HadoopµÄÊäÈëºÍÊä³ö
HadoopµÄÊäÈëºÍÊä³ö·Ö±ðΪ±ê×¼ÊäÈëºÍ±ê×¼Êä³ö£¬ÕâÊÇÔÚѧϰhadoopʱÊ×ÏÈÒª¼ÇסµÄ¡£¶ÔÓÚµÚÒ»´Î±àдhadoop jobµÄͬѧÀ´Ëµ£¬Èç¹ûûÓÐÈÏʶµ½ÕâµãµÄÖØÒªÐԵϰ£¬¿ÉÄܶ¼²»ÖªµÀhadoopÈçºÎÔÚ±¾µØ½øÐвâÊÔ¡£HadoopµÄÊäÈëÊä³öÊÇ»ùÓÚ±ê×¼ÊäÈëºÍ±ê×¼Êä³öµÄ£¬ÄÇôÎÒÃÇÔÚ±¾µØ²âÊÔµÄʱºò¾ÍÒªÀûÓÃbashÃüÁîÀ´Ä£ÄâÕâ¸ö¹ý³Ì£¬ËùÒÔ³£¼ûµÄunittestÐÎʽÈçÏ£º
cat input | mapper | sort | reducer > output
ÆäÖеÄsortÃüÁîµÄ×óÓÒÊÇÔÚÄ£ÄâreducerÊäÈëµÄ¹ý³Ì¡£¶ÔÓÚÊý¾ÝÁ÷¶øÑÔ£¬¾ßÓÐÏàͬkeyµÄÊý¾ÝÁ÷»á¾ÛºÏÔÚÒ»Æð£¨µ«ÊÇvalueÊÇÎÞÐòµÄ£©£¬¶øÇһᱻ·Ö·¢¸øÍ¬Ò»¸öreducer£¬ËùÒÔsortÃüÁîÖ÷ÒªÊÇÔÚÄ£ÄâÕâ¸ö¹ý³Ì£¬¹ØÓÚÕâ¸öÎÊÌâÔÚϱߵÄcombinerºÍpartitioner²¿·Ö»á½øÐÐÏêϸ½éÉÜ¡£
4. Hadoop MapReduce & Shuffler
ÎÒÃÇѧϰHadoopʵ¼ÊÉϾÍÊÇÔÚѧϰһÖÖȫеļÆËã¿ò¼Ü£¬Ëü»ùÓÚ·Ö²¼Ê½µÄ¼¼Êõ´æ´¢£¬ÀûÓÃMapReduce˼ÏëʵÏÖº£Á¿Êý¾Ý´¦ÀíµÄÄ¿µÄ¡£ÔÚûÓÐʵ¼Ê½Ó´¥Hadoopʱ£¬ºÜ¶à²Î¿¼ÊéÉ϶¼ÕâÑù˵£ºMapReduceÖ÷ҪΪÁ½¸ö½×¶Î£ºMap½×¶ÎºÍReduce½×¶Î¡£Õâ¾ä»°È·ÊµÃ»ÓÐ´í£¬µ«ÊÇÈç¹ûÏëÍêÈ«µÄÀí½âÕû¸öMapReduce˼Ï룬³ýÁËÈÏʶÉÏÊöÁ½¸ö½×¶Î»¹ÒªÉî¿ÌÀí½âÒ»¸öºÜÖØÒªµÄÖмä¹ý³Ì¡ª¡ªshuffler£¬ÆäÖÐshuffler°üº¬ÁËcombinerºÍpartitioner¡£
ÏÂͼΪMapReduceµÄÕûÌå¿ò¼Ü£¬ÆäÖÐshuffler²¿·ÖµÄ²Ù×÷½éÓÚMapperºÍReducerÖ®¼ä£¬ËüµÄÖ÷Òª¹¦ÄÜΪ´¦ÀíMapperµÄÊä³ö²¢ÎªReducerÌṩÏàÓ¦µÄÊäÈëÎļþ£¬Ö÷Òª²Ù×÷ΪcombinerºÍpartitioner¡£
[Hadoop] HadoopѧϰÀú³Ì
ÎÒÃÇ¿ÉÒÔÕâÑùÀ´Àí½âÉÏÊöµÄÈýÖÖÖмä²Ù×÷£º
combiner£º·ÖΪMapper¶ËºÍReducer¶Ë£¬Ö÷Òª×÷ÓÃÊǽ«¼üÖµ¶ÔÖоßÓÐÏàͬkeyµÄ·ÅÔÚÒ»Æð£»
partitioner£º°Ñ¼üÖµ¶Ô°´ÕÕkey·ÖÅ䏸reducer¡£
combinerºÍpartitionerÁ½Õß½áºÏ¿ÉÒÔʹµÃÿһ¸öReducerµÄÊäÈëÊǰ´ÕÕkey½øÐоۺϵ쬶øÇÒͬһ¸ökeyËù¶ÔÓ¦µÄÊý¾ÝÁ÷Ö»»á±»·ÖÅ䵽ͬһ¸öReducer£¬Õâ¾Í¼«´óµØ¼ò»¯ÁËReducerµÄÈÎÎñ¡£
ÏÂͼΪÏÔʾÁËcombinerºÍpartitionerÁ½¸öÖмä²Ù×÷µÄMapReduce¿ò¼Üͼ£¬Õâ¸öÀý×ÓÊÇ×ö´ÊƵͳ¼Æ£º
[Hadoop] HadoopѧϰÀú³Ì
ÎÒÃÇ¿ÉÒÔ¿´µ½combinerµÄ×÷ÓþÍÊǰ´ÕÕkey½«MapperµÄÊä³ö½øÐоۺϣ¬¶øpartitioner»á½«ËùÓÐcombinerµÄ½á¹û°´ÕÕkey½øÐзַ¢£¬·Ö·¢¸ø²»Í¬µÄReducer½øÐÐÊý¾ÝµÄ´¦Àí¡£ÎÒÃÇÔÚReducer¶Ë¿ÉÒÔ¿´µ½Á½µã£º
µÚÒ»£¬ËùÓоßÓÐÏàͬkeyµÄÊý¾ÝÁ÷¾ù±»·Ö·¢µ½Í¬Ò»¸öReducer£»
µÚ¶þ£¬Ã¿¸öReducerµÄÊäÈëÖÐÊý¾ÝÁ÷Êǰ´ÕÕkey½øÐоۺϵ쬼´¾ßÓÐÏàͬkeyµÄÊý¾ÝÁ÷ÊÇÁ¬ÔÚÒ»ÆðµÄ¡£
ÕâÑùÎÒÃÇÔÚReducer¶Ë¾Í¿ÉÒÔºÜÇáËɵÄÍê³É´ÊƵͳ¼ÆµÄÈÎÎñ£¬ÎÒÃÇ¿ÉÒÔ°´ÕÕÊý¾ÝÁ÷µÄ˳Ðò½øÐÐ´ÊÆµµÄͳ¼Æ£¬Èç¹ûµ±Ç°Êý¾ÝÁ÷µÄkeyÓëÉÏÒ»¸öÊý¾ÝÁ÷µÄkeyÏàͬ£¬ÄØÃ´¾Í½«¸Ãkey¶ÔÓ¦µÄ´ÊƵ½øÐÐÀÛ¼Ó£¬Èç¹û²»Í¬ËµÃ÷¸ÃkeyÒѾ­±»Í³¼ÆÍê³É£¬Ôò½øÐÐÏÂÒ»¸ö´ÊµÄͳ¼Æ¼´¿É¡£
´ËÍ⣬ÔÚhadoopµÄÅäÖÃÖÐÎÒÃÇ¿ÉÒÔΪpartitionerÅäÖÃÏàÓ¦µÄ²ÎÊýÀ´¿ØÖÆpartitioner°´ÕÕ²»Í¬µÄÁÐÀ´½øÐÐÊý¾ÝµÄÇз֣¬hadoopµÄĬÈÏÉèÖÃÊǰ´ÕÕkey½øÐÐÊý¾ÝµÄÇз֡£
Æäʵ³ýÁËcombinerºÍpartitionerÒÔÍ⣬»¹ÓÐһЩÖмä²Ù×÷Ò²ÐèÒª½øÐÐÉî¿ÌµÄÀí½â£¬±ÈÈçhadoopµÄsort¹ý³Ì¡£ÔÚÕâÀÎÒÃÇ¿ÉÒÔ¼òµ¥Á˽âÒ»ÏÂReducer¶ËµÄsort£¬ËüÆäʵÊÇÒ»ÖÖ¶þ´ÎÅÅÐò£¨secondary sort£©¡£ÎÒÃÇÖªµÀÔÚhadoopÖÐÿ¸öReducerµÄÊäÈëÊý¾ÝÁ÷ÖУ¬Êý¾ÝÁ÷¶¼Êǰ´ÕÕkey¾ÛºÏºÃµÄ£¬µ«ÊÇÆä¶ÔÓ¦valueÔòÊÇÎÞÐòµÄ£¬¼´Í¬Ò»¸öjobÔËÐжà´Î£¬ÓÉÓÚMapperÍê³ÉµÄ˳Ðò²»Í¬£¬ReducerÊÕµ½µÄvalueµÄ˳ÐòÔòÊDz»¹Ì¶¨µÄ£¬ÄÇôÈçºÎ²ÅÄÜʹµÃReducer½ÓÊÕµÄvalue³ÉΪÓÐÐòµÄÄØ£¿Õâ¾ÍÊÇsecondary sortÐèÒª½â¾öµÄÎÊÌ⣬ËüµÄÓ¦Óó¡¾°³£¼ûµÄÓÐÇóÿ¸ökeyϵÄ×îС/×î´óvalueÖµµÈ¡£
´ËÍ⣬ÎÒÃÇÒ²¿ÉÒÔͨ¹ý²ÎÊýÀ´¿ØÖÆsecondary sortÏàÓ¦µÄ×÷ÓÃÓò¡£
5. Hadoop³£¼û²Ù×÷
5.1 count²Ù×÷
count(¼ÆÊý/ͳ¼Æ)ÊÇhadoop×îΪ³£¼ûµÄ²Ù×÷Ö®Ò»¡£ËüµÄ»ù±¾Ë¼ÏëÊǾÍÊÇÉÏÊö´ÊƵͳ¼ÆµÄÀý×ÓËù½²ÊöµÄ£¬ÓÉÓÚÿ¸öReducerµÄÊäÈë¶¼Êǰ´ÕÕkey½øÐоۺϵģ¬ËùÒÔ¿ÉÒÔ¸ù¾ÝkeyÀ´Ë³ÐòµÄ½øÐÐÀÛ¼Ó¡£
5.2 join²Ù×÷
join£¨Æ´½Ó£©ÊÇhadoopÖÐ×îΪ³£¼ûµÄ²Ù×÷Ö®Ò»£¬ËüµÄÖ÷ÒªÈÎÎñ¾ÍÊǽ«¶àÕÅÊý¾Ý±í°´ÕÕij¸ö×Ö¶ÎÆ´½Ó³ÉÒ»¸ö±í¡£ÒªÏëд³öjoin²Ù×÷ÐèÒª¿¼ÂÇÖÜÈ«£¬·ñÔò»áµÃµ½ÒâÏë²»µ½µÄ½á¹û¡££¨PS£ºÎÒÔÚ¸Õ¿ªÊ¼runµÚÒ»¸öjoin jobµÄʱºò£¬·¢ÏÖÊä³ö½á¹û×ÜÊDz»¶Ô£¬¼ì²éÁËmapperºÍreducerµÄ´úÂëÂß¼­¾õµÃ¶¼Ã»ÓÐÎÊÌ⣬һֱ²»ÖªµÀÊÇÄÄÀï³öÎÊÌ⣬×îºóÖÕÓÚÕÒµ½ÁËÔ­Òò£¬Ô­À´ÊÇpartitionerÇзֲ¿·Ö²ÎÊýÉèÖõÄÎÊÌâ¡££©
joinµÄ˼ÏëÓкܶàÖÖ£¬µ«Êdz£ÓõÄÒ»ÖÖ¿ÉÒÔÕâÑùÀ´Àí½â£º
mapper½×¶Î£ºÓÉÓÚÊý¾ÝÁ÷À´×Ô²»Í¬µÄÊý¾Ý±í£¬ËùÒÔmapperÊǽ«Ã¿Ò»¸öÊý¾ÝÁ÷½øÐдò±êÇ©£¨tag£©£¬ÓÉÓÚÇø±ð²»Í¬±íµÄÊý¾ÝÁ÷£»
reducer½×¶Î£º¸ù¾ÝmapperÖеÄtagÀ´Çø·ÖÊý¾ÝÁ÷£¬²¢¶ÔÓÚ²»Í¬µÄÊý¾ÝÁ÷°´ÕÕ×Ô¼ºµÄÒµÎñÐèÇóÉè¼Æ²»Í¬µÄ²Ù×÷£¬×îºó½«²»Í¬µÄ±í½øÐÐÆ´½Ó¡£
ÉÏÊöµÄjoin˼Ïë±»³ÆÎªÊÇreducer¶ËÆ´½Ó¡£
5.3 ÆäËû²Ù×÷
³ýÁËÉÏÊöµÄcountºÍjoinÁ½ÖÖ³£ÓõIJÙ×÷£¬hadoop»¹Óкܶà²Ù×÷£¬±ÈÈç¼òµ¥µÄ×ֶδ¦Àí²Ù×÷¡£ÔÚ¼òµ¥µÄ×ֶδ¦Àí²Ù×÷ÖУ¬±ÈÈç¼Ó/¼õij¸ö×ֶΣ¬¸Äдij¸ö×ֶΣ¬³éȡijЩ×ֶεȵȣ¬ÎÒÃÇÖ»ÐèÒªmapper¾Í¿ÉÒÔÁË£¬´Ëʱ²»ÐèÒªreducer½øÐÐÈκβÙ×÷£¬ÕâʱºòreducerÖ±½ÓÊä³ömapperµÄ½á¹û¾Í¿ÉÒÔÁË£¬ÔÚstreamingÖÐreducer¶Ëʵ¼ÊÉÏΪһ¸öcatÃüÁî¡£
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÎÄÎäÐÐ
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ ÐÂÊÖÒÑÉÏ· µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] ²ÄÁϹ¤³Ìµ÷¼Á +7 СÁõͬѧ߹߹ 2026-04-06 8/400 2026-04-08 17:18 by ŬÁ¦ÏòÉÏ£¬²»¶ÏÅ
[¿¼ÑÐ] 290Çóµ÷¼Á085701 +17 1314Åõ»¨ 2026-04-02 18/900 2026-04-08 17:02 by Ïò9755
[¿¼ÑÐ] 266Çóµ÷¼Á +4 08µçÆø¹¤³Ì 2026-04-03 4/200 2026-04-08 15:57 by Ïò9755
[¿¼ÑÐ] Ò»Ö¾Ô¸»ªÄÏʦ·¶´óѧ-22408¼ÆËã»ú-292·Ö-Çó»ªÄÏʦ·¶´óѧµ÷¼Á +5 °®¶ÁÊéµÄСöùÓã 2026-04-02 5/250 2026-04-08 14:55 by CASС»¨¹¤
[¿¼ÑÐ] 293·ÖÇóµ÷¼Á£¬ÍâÓïΪ¶íÓï +5 ¼ÓÒ»Ò»¾Å 2026-04-07 7/350 2026-04-07 23:04 by JourneyLucky
[¿¼ÑÐ] ѧ˶»¯Ñ§¹¤³ÌÓë¼¼Êõ£¬Ò»Ö¾Ô¸Öйúº£Ñó´óѧ320+Çóµ÷¼Á +9 ÅûÐÇºÓ 2026-04-02 9/450 2026-04-07 12:53 by ¾¡Ë´Ò¢1
[¿¼ÑÐ] ²ÄÁϵ÷¼Á +12 Ò»ÑùYWY 2026-04-02 14/700 2026-04-07 12:52 by Sammy2
[¿¼ÑÐ] 346·ÖµÄÉúÎïÓëÒ½Ò©08600Çóµ÷¼Á +6 ³£ÓêÑôÉϰ¶ 2026-04-05 7/350 2026-04-06 12:36 by lys0704
[¿¼ÑÐ] ²ÄÁÏ334Çóµ÷¼Á +19 Eecho# 2026-04-03 19/950 2026-04-06 08:37 by ССÊ÷2024
[¿¼ÑÐ] 308Çóµ÷¼Á +3 ÖÕ²»ËÆ´Óǰ 2026-04-05 3/150 2026-04-05 22:23 by hemengdong
[¿¼ÑÐ] 22408 ×Ü·Ö320£¬Ò»ÆªÂÛÎĶþ×÷£¬Á½¸ö¹úÈý£¬Çóµ÷¼Á +3 Leomulufu 2026-04-04 5/250 2026-04-05 19:04 by chongya
[¿¼ÑÐ] ¹¤¿Æ08-»úеר˶-Çóµ÷¼Á +3 À×Å··ÉÌß 2026-04-02 3/150 2026-04-05 18:49 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 284Çóµ÷¼Á +7 Ðìͬѧ_001 2026-04-04 13/650 2026-04-05 17:19 by yulian1987
[¿¼ÑÐ] 083200 333Çóµ÷¼Á +3 Ê®¶þ£¡£¡ 2026-04-04 3/150 2026-04-05 08:28 by barlinike
[¿¼ÑÐ] 085602µ÷¼Á ³õÊÔ×Ü·Ö335 +12 19123253302 2026-04-04 12/600 2026-04-05 08:08 by 544594351
[¿¼ÑÐ] [µ÷¼ÁÐÅÏ¢]085408¹âµçÐÅÏ¢ Çóµ÷¼Á ×Ü·Ö291·ÖÊýÒ»Ó¢Ò» +3 iz11az 2026-04-02 3/150 2026-04-04 19:09 by À¶ÔÆË¼Óê
[¿¼ÑÐ] ²ÄÁϵ÷¼Á +11 ÎâèùÓ±£¡ 2026-04-03 11/550 2026-04-04 09:56 by ССÊ÷2024
[¿¼ÑÐ] ¿¼ÑÐÇóµ÷¼Á +3 ľÐÄÏë¼ÌÐøÉîÔì 2026-04-03 3/150 2026-04-03 21:56 by à£à£à£0119
[¿¼ÑÐ] 283Çóµ÷¼Á +3 jiouuu 2026-04-02 4/200 2026-04-02 14:08 by ßÕßÕßÕßÉßÉßÉ
[¿¼ÑÐ] 348»·¾³¹¤³Ìµ÷¼Á +3 ÎâÑå׿24k 2026-04-01 3/150 2026-04-02 09:14 by nanaliuyun
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û