¸üÐÂʱ¼ä:2023Äê12ÔÂ07ÈÕ10ʱ30·Ö À´Ô´:ÀÖÓãµç¾º ä¯ÀÀ´ÎÊý:

¡¡¡¡ÔÚSparkÖУ¬¿íÕÒÀÀµ(Wide vs Narrow Dependency)Ö¸µÄÊÇ×÷Òµ(Job)Öв»Í¬RDD(Resilient Distributed Dataset)Ö®¼äµÄÒÀÀµ¹ØÏµÀàÐÍ¡£
¡¡¡¡£¨1£©µ±¸¸RDDµÄÿ¸ö·ÖÇø½ö±»Ò»¸ö×ÓRDDµÄ¶ÔÓ¦·ÖÇøËùʹÓÃʱ£¬¾Í´æÔÚÕÒÀÀµ¡£
¡¡¡¡£¨2£©ÕÒÀÀµ·¢ÉúÔÚÒ»¶ÔÒ»µÄת»»²Ù×÷£¬±ÈÈçmap¡¢filterµÈ¡£ÕâÒâζ×Åÿ¸ö¸¸RDDµÄ·ÖÇøÖ»»á±»ÓÃÓÚ¼ÆËãÉú³ÉÒ»¸ö×ÓRDDµÄ¶ÔÓ¦·ÖÇø£¬²»»á·¢ÉúÊý¾ÝµÄshuffle(ÖØÐ·ÖÅäÊý¾Ý)¡£
¡¡¡¡£¨3£©ÒòΪûÓÐÊý¾ÝµÄÖØÐ·ַ¢£¬ÕÒÀÀµµÄ²Ù×÷ЧÂʸߣ¬²»ÐèÒªÍøÂç´«ÊäÊý¾Ý£¬¶øÊÇÔÚͬһ¸ö½ÚµãÉϽøÐмÆËã¡£

¡¡¡¡£¨1£©µ±¸¸RDDµÄÒ»¸ö»ò¶à¸ö·ÖÇø±»¶à¸ö×ÓRDDµÄ·ÖÇøËùʹÓÃʱ£¬¾Í´æÔÚ¿íÒÀÀµ¡£
¡¡¡¡£¨2£©¿íÒÀÀµÍ¨³£·¢ÉúÔÚ»áÒýÆðÊý¾ÝshuffleµÄ²Ù×÷£¬±ÈÈçgroupByKey¡¢reduceByKeyµÈÐèÒªÊý¾ÝÖØÐ·ÖÇøµÄ²Ù×÷¡£
¡¡¡¡£¨3£©Êý¾ÝµÄÖØÐ·ÖÇø¿ÉÄÜÐèÒª¿ç½ÚµãµÄÍøÂç´«Ê䣬ÒòΪͬһ¸ö¸¸RDDµÄ·ÖÇøÊý¾ÝÒª±»¶à¸ö×ÓRDDµÄ·ÖÇøËùʹÓã¬Õâ»á´øÀ´ÐÔÄÜÉϵĿªÏú¡£
¡¡¡¡ÕÒÀÀµºÍ¿íÒÀÀµÖ®¼äµÄÇø±ðÔÚÓÚÊý¾ÝµÄ·ÖÇøÒÔ¼°ÊÇ·ñÐèÒªÔÚ²»Í¬½ÚµãÖ®¼ä½øÐÐÊý¾Ý´«Êä¡£SparkÓÅ»¯»á¾¡¿ÉÄܼõÉÙ¿íÒÀÀµµÄ³öÏÖ£¬ÒòΪËüÃÇ¿ÉÄܵ¼ÖÂÐÔÄÜϽµ£¬ÓÈÆäÊÇÔÚÉæ¼°´ó¹æÄ£Êý¾Ýshuffleʱ¡£
¡¡¡¡Ê¹ÓÃÕÒÀÀµµÄת»»²Ù×÷Äܹ»¹¹½¨¸ü¸ßЧµÄ×÷ÒµÖ´Ðмƻ®£¬ÒòΪËüÃǼõÉÙÁËÊý¾ÝÒÆ¶¯ºÍÍøÂ翪Ïú¡£Òò´Ë£¬ºÏÀíµØÉè¼ÆSpark×÷ÒµÖеÄת»»²Ù×÷£¬±ÜÃâ¿íÒÀÀµµÄ³öÏÖ£¬ÓÐÖúÓÚÌá¸ß×÷ÒµµÄÐÔÄܺÍÖ´ÐÐЧÂÊ¡£
±±¾©Ð£Çø