À´Ô´£ºÖ¤È¯Ê±±¨Íø×÷Õߣº³ÂÃñƽ2025-08-09 12:19:26
dsjkfberbwkjfbdskjbqwesadsa Ëæ×Å´óÊý¾Ý¼¼ÊõÔÚÂþ»­Æ½Ì¨µÄÉî¶ÈÓ¦Óã¬×ÏÌÙׯ԰Sparkʵ¼ùÊÓÆµµÚ2ÕÂ×îнÌѧ×ÊÔ´ÔÚBilibiliÂþ»­¿ª·¢ÁìÓòÒý·¢ÉÕÒé¡£±¾ÆÚ½Ì³Ì¾Û½¹ÂþÑÜʽÅÌËã¿ò¼ÜµÄʵսÔËÓã¬Í¨¹ýÂþ»­ÍƼöϵͳµÄÕæÊµ°¸Àý£¬Ïêϸ½âÎöÊý¾Ý´¦Öóͷ£¡¢ÌØÕ÷¹¤³Ìµ½Ä£ÐÍѵÁ·µÄÍêÕûÁ÷³Ì£¬Îª¿ª·¢ÕßÌṩֵµÃÊղصļ¼ÊõÖ¸ÄÏ¡£

×ÏÌÙׯ԰Sparkʵ¼ùÊÓÆµµÚ2Õ½âÎö£ºBÕ¾Âþ»­´óÊý¾Ý´¦Öóͷ£Ö¸ÄÏ

µÚÒ»ÕÂ֪ʶ»ØÊ×Óë±¾ÕÂÖØµãÏνÓ

ÔÚ×ÏÌÙׯ԰SparkϵÁн̵̳ÄÊ×ÕÂÖУ¬ÎÒÃǽ¨ÉèÁË»ù´¡¿ª·¢Çé¿ö²¢Íê³ÉÁËÊý¾ÝÊÕÂÞ¡£±¾´ÎµÚ2ÕÂ×îÐÂÊÓÆµ×ÅÖØÕ¹Ê¾RDD£¨µ¯ÐÔÂþÑÜʽÊý¾Ý¼¯£©ºÍDataFrame£¨½á¹¹»¯Êý¾Ý³éÏó£©ÔÚÂþ»­Êý¾Ý´¦Öóͷ£ÖеÄЭͬӦÓá£Í¨¹ýBilibiliÂþ»­ÕæÊµÓû§»­ÏñÊý¾Ý£¬½Ì³ÌÑÝʾÁËÈçºÎʵÏÖǧÍò¼¶Âþ»­±êÇ©µÄ¿ìËÙÇåÏ´Óëͳ¼Æ£¬ÕâÕýÊǹ¹½¨ÍƼöϵͳµÄÒªº¦Ô¤´¦Öóͷ£²½Öè¡£

Âþ»­ÌØÕ÷¹¤³ÌÈ«Á÷³Ì½âÃÜ

ÊÓÆµÖÐÌØ±ðÒýÈËעĿµÄÊÇSpark MLlibÔÚÌØÕ÷ÌáÈ¡ÖеÄÓ¦ÓÃʵ¼ù¡£Õë¶ÔÂþ»­Æ½Ì¨µÄ¶àÔª»¯Êý¾Ý£¨°üÂÞÔĶÁʱ³¤¡¢µãÔÞÐÐΪ¡¢¸¶·Ñ¼Í¼µÈ£©£¬½²Ê¦ÏêϸÑÝʾÁËÈçºÎ¹¹½¨TF-IDFÌØÕ÷¾ØÕó£¨´ÊÆµ-ÄæÎĵµÆµÂÊͳ¼ÆÒªÁ죩¡£ÄãÊÇ·ñÀ§»óÓÚº£Á¿Âþ»­±êÇ©µÄ¹ØÁª·ÖÎö£¿½Ì³ÌÌá³öµÄ»ùÓÚFP-GrowthËã·¨µÄƵ·±ÏÍÚ¾ò·½°¸£¬ÄÜÓÐЧ·¢ÏÖÓû§Æ«ºÃµÄÂþ»­×éºÏ¼ÍÂÉ¡£

ÂþÑÜÊ½ÍÆ¼öË㷨ʵÏÖϸ½Ú

ÔÚÂþ»­ÍƼö³¡¾°Ï£¬ÊÓÆµÉîÈë½â˵ÁËЭͬ¹ýÂËËã·¨ÔÚSparkÂþÑÜʽ¼¯ÈºÉϵÄʵÏÖÔ­Àí¡£ÌرðÖµµÃ¹Ø×¢µÄÊǽÓÄÉALS£¨½»Ìæ×îС¶þ³Ë·¨£©´¦Öóͷ£Óû§-Âþ»­ÆÀ·Ö¾ØÕóµÄÕ½ÂÔ¡£½Ì³ÌչʾÁËÈçºÎÔÚBilibiliÂþ»­°ÙÒÚ¼¶Óû§ÐÐΪÊý¾ÝÖУ¬Í¨¹ýºÏÀíµÄ·ÖÇøÉè¼Æ£¨Partition Strategy£©½«ÅÌËãºÄʱ½µµÍ63%£¬ÕâÖÖÐÔÄÜÓÅ»¯¶ÔÊµÊ±ÍÆ¼öϵͳÓÈÎªÖØÒª¡£

ʵʱÊý¾Ý´¦Öóͷ£ÓëÐÔÄܵ÷ÓÅ

µÚ2ÕÂ×îиüÐÂÕ½ÚÐÂÔöÁËStructured StreamingÓ¦Óð¸Àý¡£Í¨¹ýÄ£ÄâÂþ»­Æ½Ì¨µÄʵʱÔĶÁÊý¾ÝÁ÷£¬½Ì³ÌÑÝʾÁËÈçºÎʵÏÖ·ÖÖÓ¼¶¸üеÄÂþ»­ÈȶȰñµ¥¡£Õë¶Ôпª·¢Õß³£¼ûµÄOOM£¨ÄÚ´æÒç³ö£©ÎÊÌ⣬½²Ê¦ÌرðÖ¸³öºÏÀíÉèÖÃexecutorÄÚ´æ²ÎÊýÓëÐòÁл¯·½Ê½£¬ÕâÊÇÈ·±£Spark×÷ÒµÎȶ¨ÔËÐеÄÒªº¦ÅäÖá£

ÏîÄ¿½á¹ûÓëÉÌÒµ»¯Ó¦ÓÃÑéÖ¤

ͨ¹ýÍêÕû¸´ÏÖBilibiliÂþ»­ÍƼöϵͳµÄ½¹µãÄ£¿é£¬¸ÃSparkʵ¼ùÏîÄ¿ÒÑʵÏÖµã»÷ÂÊÔ¤²â׼ȷÂÊ82%µÄÉÌÒµ»¯»ù×¼¡£ÊÓÆµ½áβ´¦Õ¹Ê¾µÄA/B²âÊÔ£¨¶Ô±ÈÊÔÑ飩Êý¾Ý½²Ã÷£¬ÐÂÍÆ¼öË㷨ʹƽ̨Óû§ÈÕ¾ùÔĶÁʱ³¤ÌáÉý27%¡£ÕâÖÖ´ÓʵÑéÇé¿öµ½Éú²úϵͳµÄÇ¨ÒÆ¾­Ñ飬ÕýÊDZ¾½Ì³ÌÇø±ðÓÚͬÀà¿Î³ÌµÄ½¹µã¼ÛÖµ¡£

±¾´Î×ÏÌÙׯ԰Sparkʵ¼ùÊÓÆµµÚ2ÕÂ×îÐÂÄÚÈÝ£¬Í¨¹ýBilibiliÂþ»­ÕæÊµÒµÎñ³¡¾°µÄÍêÕû»¹Ô­£¬¹¹½¨ÁËÂþÑÜʽÅÌËã¿ò¼ÜÓ뻥ÁªÍø²úÎïµÄ¼¼ÊõÇÅÁº¡£½Ì³ÌÖÐÑÝʾµÄÊý¾Ý´¦Öóͷ£·¶Ê½¡¢Ë㷨ʵÏÖ¼¼ÇÉÓëÐÔÄܵ÷ÓÅ·½°¸£¬Îª¿ª·¢ÕßÌṩÁ˿ɸ´ÓõĹ¤Òµ»¯½â¾ö·½°¸Ä£°å¡£Ëæ×ÅÂþ»­Æ½Ì¨Êý¾Ý¹æÄ£µÄÁ¬ÐøÔö³¤£¬ÕÆÎÕÕâЩSparkʵս¼¼Êõ½«³ÉΪ¹¤³ÌʦµÄ½¹µã¾ºÕùÁ¦¡£ Ô˶¯£º¡¾¼òÃ÷½âÎö×ÏÌÙׯ԰sparkʵ¼ùÊÓÆµÈ«Ãæ½âÎöÆóÒµ¼¶´óÊý¾ÝÓ¦Óþ¯Ìè¡¿ Ëæ×ÅÆóÒµÊý×Ö»¯×ªÐͼÓËÙ£¬×ÏÌÙ×¯Ô°ÍÆ³öµÄSparkʵ¼ù½ÌѧÊÓÆµ³ÉΪ´óÊý¾Ý¿ª·¢ÕߵĽ¹µãѧϰ×ÊÔ´¡£±¾½âÎöÉî¶È²ð½âÊÓÆµÖÐÉæ¼°µÄÂþÑÜʽÅÌËã¿ò¼ÜÓ¦Óó¡¾°£¬½ÒʾÆóÒµ¼¶Êý¾Ý´¦Öóͷ£ÐèÒª¾¯ÌèµÄÐÔÄÜÆ¿¾±Óë¼¼ÊõÎóÇø£¬Îª¿ª·¢ÕßÌṩ¿É¸´ÓõÄÓÅ»¯·½°¸¡£

×ÏÌÙׯ԰Sparkʵ¼ùÊÓÆµ,ÆóÒµ¼¶´óÊý¾ÝÓ¦ÓýâÎö-¿ª·¢¼¼ÇÉÈ«½ÒÃØ

ÆóÒµ¼¶ÏîÄ¿Çé¿ö´î½¨Êµ¼ù

ÔÚ×ÏÌÙׯ԰Sparkʵ¼ùÊÓÆµ¿ªÆª²¿ÃÅ£¬¹¤³ÌʦÑÝʾÁË»ùÓÚÔÆÔ­Éú¼Ü¹¹µÄ¼¯Èº²¿Êð·½°¸¡£ÊÓÆµÏêϸչʾÁËÈçºÎͨ¹ýKubernetes±àÅÅʵÏÖµ¯ÐÔ×ÊÔ´µ÷ÖΣ¬Õâ¶Ô´¦Öóͷ£º£Á¿µçÉ̽»Ò×ÈÕÖ¾¾ßÓÐÒªº¦×÷Óá£ÖµµÃ×¢ÒâµÄÊÇ£¬ÆóÒµ¼¶²¿Êð±ØÐë¹Ø×¢ÍøÂçÍØÆËÓÅ»¯£¬ÓÈÆäÊÇÔÚ´¦Öóͷ£ÊµÊ±Êý¾ÝÁ÷ʱ£¬´íÎóµÄÍøÂçÅäÖûᵼÖÂRDD£¨µ¯ÐÔÂþÑÜʽÊý¾Ý¼¯£©´«ÊäЧÂʽµµÍ50%ÒÔÉÏ¡£

½¹µãÅÌËãÄ£ÐÍʵÏÖ½âÎö

ÊÓÆµÖÐÖØµã½âÎöÁËDataFrame APIÓëSpark SQLµÄÁªºÏÓ¦ÓÃģʽ¡£Í¨¹ýÂÃÓÎÐÐÒµÓû§»­Ïñ¹¹½¨°¸Àý£¬ÑÝʾÁËÈçºÎ½«Ô­Ê¼ÈÕ־ת»¯Îª½á¹¹»¯Êý¾Ý×ʲú¡£¼¼ÊõÈËÔ±ÐèÒªÌØ±ð×¢ÒâÄÚ´æÖÎÀíÕ½ÂÔ£¬µ±´¦Öóͷ£PB¼¶Éç½»ÍøÂçÊý¾Ýʱ£¬²»ºÏÀíµÄÐòÁл¯·½Ê½»áʹÈÎÎñÖ´ÐÐʱ¼ä³É±¶Ôö¼Ó¡£ÈçºÎÑ¡ÔñºÏÊʵÄshuffleÕ½ÂÔ£¿ÕâÐèҪƾ¾ÝÊý¾ÝÌØÕ÷¶¯Ì¬µ÷Õû·ÖÇøËã·¨¡£

ʵʱÊý¾Ý´¦Öóͷ£¼Ü¹¹ÓÅ»¯

Õë¶ÔÎïÁªÍøÊµÊ±¼à¿Ø³¡¾°£¬½ÌѧÊÓÆµ¶Ô±ÈÁËStructured StreamingÓë¾É°æDStreamµÄЧÄܲîÒì¡£ÔÚ³µÁªÍø³¡¾°µÄѹÁ¦²âÊÔÖУ¬ÓÅ»¯ºóµÄ΢Åú´Î´¦Öóͷ£½«ÑÓ³Ù½µµÍÖÁ300ºÁÃëÒÔÄÚ¡£ÕâÀïÐèÒª¾¯ÌèÊý¾ÝÇãбÎÊÌ⣬µ±´«¸ÐÆ÷ÂþÑܲ»¾ùʱ£¬½¨Òé½ÓÄÉˮӡ»úÖÆÅäºÏ״̬´æ´¢Õ½ÂÔÀ´Æ½ºâ¸÷½Úµã¸ºÔØ¡£

ÆóÒµ¼¶Äþ¾²¼Ó¹Ì·½°¸

½ðÈÚ¼¶Ó¦ÓõÄÌØÊâÐèÇó²¿ÃÅ£¬ÊÓÆµÑÝʾÁËKerberosÈÏÖ¤¼¯³ÉÓëHDFS¼ÓÃÜ´æ´¢·½°¸¡£ÌرðÊÇÔÚ´¦Öóͷ£Óû§Òþ˽Êý¾Ýʱ£¬±ØÐëÆôÓö¯Ì¬Êý¾ÝÑÚÂ빦Ч¡£¿ª·¢ÕßÔÚ½øÐлá¼û¿ØÖÆÅäÖÃʱ£¬Òª×¢ÒâÖÆÖ¹ACL£¨»á¼û¿ØÖÆÁÐ±í£©µÄÌ«¹ýÊÚȨ£¬Õâ¿ÉÄÜÒý·¢ÑÏÖØµÄÊý¾Ýй¶·çÏÕ¡£

µäÐÍ´íÎ󳡾°Éî¶ÈÆÊÎö

½ÌѧÊÓÆµÓÃ20·ÖÖÓרÃŽâÎöÁËÊ®´ó³£¼û´íÎóģʽ£¬ÆäÖÐJVMÄÚ´æÒç³öÎÊÌâ×îΪÖÂÃü¡£ÔÚijÎïÁ÷ÆóÒµµÄʵ¼ùÖУ¬´íÎóÉèÖÃexecutor¶ÑÄÚ´æµ¼Ö¼¯ÈºÕûÌåå´»ú¡£ÊÓÆµ¸ø³öÁËGC£¨À¬»ø½ÓÄÉ£©µ÷ÓŹ«Ê½£ºÄÚ´æ·ÖÅä=·ÖÇøÊý¡Á1.5GB¡£Í¬Ê±Ç¿µ÷Òª¶¨ÆÚ¼à¿ØstorageÄÚ´æÕ¼±È£¬·ÀÖ¹»º´æÊý¾ÝÕ¼Óùý¶àÅÌËã×ÊÔ´¡£

»úеѧϰģÐͲ¿Êðʵ¼ù

ÔÚÍÆ¼öϵͳ°¸ÀýÖУ¬¹¤³ÌʦÑÝʾÁËML PipelineÓëPySparkµÄÕûºÏÓ¦Óá£Õë¶Ô¹ã¸æµã»÷ÂÊÔ¤²âÈÎÎñ£¬ÊÓÆµ½¨Òé½ÓÄÉÌØÕ÷½»Ö¯¼¼ÊõÌáÉýÄ£ÐÍAUCÖµ0.15¸öµã¡£µ«Ð辯ÌèÄ£ÐÍÆ¯ÒÆÎÊÌ⣬±ØÐëÅäÖÃ×Ô¶¯»¯Ä£ÐÍÖØÑµÁ·»úÖÆ£¬ÕâÔÚµçÉÌ´ó´ÙÆÚ¼äÓÈÎªÖØÒª¡£Õ¹Ê¾ÁËÈçºÎͨ¹ýAlluxio¼ÓËÙÌØÕ÷¶ÁÈ¡£¬Ê¹Åú´¦Öóͷ£ÈÎÎñºÄʱÌÔÌ­60%¡£

×ÏÌÙׯ԰Sparkʵ¼ùÊÓÆµÏµÍ³ÐÔµØÕ¹Ê¾ÁËÆóÒµ¼¶Ó¦Óõļ¼ÊõʵÏÖ·¾¶£¬´Ó»ù´¡Çé¿öÅäÖõ½¸ß½×Ä£ÐͲ¿Êð²ã²ãµÝ½ø¡£¿ª·¢ÕßÓ¦ÖØµã¹Ø×¢ÊÓÆµÖÐÖØ¸´Ç¿µ÷µÄ¼¯Èºµ÷ÓŹæÔòºÍÊý¾ÝÄþ¾²¹æ·¶£¬Í¬Ê±¾¯ÌèÒþ²ØµÄÐÔÄÜÏÝÚå¡£ÕÆÎÕÕâЩ½¹µãÒªµã£¬²ÅÆøÕæÕý·¢»ÓSpark¿ò¼ÜÔÚÆóÒµÊý×Ö»¯×ªÐÍÖеÄÕ½ÂÔ¼ÛÖµ¡£
ÔðÈα༭£º ³Âºñ
ÉùÃ÷£ºÖ¤È¯Ê±±¨Á¦ÇóÐÅÏ¢ÕæÊµ¡¢×¼È·£¬ÎÄÕÂÌá¼°ÄÚÈݽö¹©²Î¿¼£¬²»×é³ÉʵÖÊÐÔͶ×ʽ¨Ò飬¾Ý´Ë²Ù×÷·çÏÕ×Ôµ£
ÏÂÔØ¡°Ö¤È¯Ê±±¨¡±¹Ù·½APP£¬»ò¹Ø×¢¹Ù·½Î¢ÐÅÃñÖںţ¬¼´¿ÉËæÊ±Á˽â¹ÉÊж¯Ì¬£¬¶´²ìÕþ²ßÐÅÏ¢£¬ÕÆÎղƸ»Ê±»ú¡£
ÍøÓÑÆÀÂÛ
µÇ¼ºó¿ÉÒÔ½²»°
·¢ËÍ
ÍøÓÑÆÀÂÛ½ö¹©Æä±í´ïСÎÒ˽¼Ò¿´·¨£¬²¢²»½²Ã÷֤ȯʱ±¨Á¢³¡
ÔÝÎÞÆÀÂÛ
ΪÄãÍÆ¼ö