µÚÒ»Õ£ºÆóÒµ¼¶´óÊý¾Ýƽ̨½¨ÉèÍ´µãÆÊÎö
ÔÚÊý×Ö»¯×ªÐÍÀú³ÌÖУ¬¹Å°åÆóÒµ³£ÃæÁÙÊý¾Ý¹Âµº¡¢ÅÌËã×ÊÔ´ÆÌÕÅ¡¢ÊµÊ±´¦Öóͷ£ÄÜÁ¦È±·¦ÈýºÆ½ÙÌâ¡£×ÏÌÙׯ԰Sparkʵս°¸ÀýÖУ¬Í¨¹ýͳһԪÊý¾ÝÖÎÀíºÍDelta LakeÊÖÒÕʵÏֿ粿·ÖÊý¾Ý×ʲúÕûºÏ£¬ÕâÇ¡ÊÇÆóÒµ¼¶Êý¾ÝÖÐ̨½¨ÉèµÄ½¹µãËßÇó¡£½ÓÄÉSpark SQLÓëHudi£¨Hadoop Upserts Deletes and Incrementals£©ÏàÁ¬ÏµµÄ¼Ü¹¹£¬ÀÖ³ÉÍ»ÆÆ¹Å°åETL£¨³éȡת»»¼ÓÔØ£©Á÷³ÌÖеÄÅú´¦Öóͷ£ÐÔÄÜÆ¿¾±¡£ÔõÑù¹¹½¨¼ÈÄÜÖ§³ÖPB¼¶ÀëÏßÅÌË㣬ÓÖÄÜÖª×ãºÁÃ뼶ʵʱÆÊÎöÐèÇóµÄ»ìÏý¼Ü¹¹£¿ÕâÕýÊDZ¾Ì×ÊÓÆµ×ÅÖØ½â¾öµÄ¹¤³Ìʵ¼ùÎÊÌâ¡£
µÚ¶þÕ£ºSpark½¹µã×é¼þ½ø½×Ó¦ÓÃÆÊÎö
ÊÓÆµÉî¶È½â¹¹Spark ExecutorÄÚ´æÄ£×Óµ÷ÓÅÕ½ÂÔ£¬Õë¶ÔÆóÒµ³£¼ûµÄGC£¨À¬»ø½ÓÄÉ£©Í£ÁôÎÊÌ⣬Ìá³ö»ùÓÚRDD£¨µ¯ÐÔÂþÑÜʽÊý¾Ý¼¯£©ÑªÍ³¹ØÏµµÄ»º´æ¸´ÓûúÖÆ¡£ÔÚShuffleÀú³ÌÓÅ»¯»·½Ú£¬Í¨¹ý¶¯Ì¬µ÷Àíspark.sql.shuffle.partitions²ÎÊý£¬²¢Á¬ÏµÊý¾ÝÇãб¼ì²âËã·¨£¬Ê¹Ä³½ðÈÚ¿Í»§±¨±íÌìÉúЧÂÊÌáÉý4±¶¡£ÁîÈ˹Ø×¢µÄÊÇ£¬½Ì³Ì»¹Õ¹Ê¾ÁËStructured StreamingÔÚIoT×°±¸ÈÕÖ¾´¦Öóͷ£ÖеĶ˵½¶Ë£¨End-to-End£©ÊµÏÖ£¬Éæ¼°Exactly-OnceÓïÒå°ü¹ÜÓë¼ì²éµã£¨Checkpoint£©»Ö¸´»úÖÆµÈÒªº¦ÊÖÒյ㡣
µÚÈýÕ£ºÉú²úÇéÐθ߿ÉÓüܹ¹Éè¼Æ½ÒÃØ
ÆËÃæÁÙ¼¯Èº¹æÄ£µÖ´ï2000+½ÚµãµÄ³¬´óÐͰ²ÅÅʱ£¬×ÏÌÙׯ԰ÊÖÒÕÍŶÓÁ¢ÒìÐԵؽÓÄÉ·Ö²ã×ÊÔ´µ÷Àíϵͳ¡£Í¨¹ýYARN£¨Yet Another Resource Negotiator£©ÐÐÁÐÓÅÏȼ¶Õ½ÂÔÓëK8sµ¯ÐÔÀ©ÈÝ»úÖÆÁª¶¯£¬ÔÚ˫ʮһ´ó´Ùʱ´ú°ü¹ÜÁ˽¹µãÓªÒµ99.99%µÄSLA£¨Ð§ÀÍÆ·¼¶ÐÒ飩¡£±¾¶ÎÊÓÆµÍêÕû»¹ÔÁËZookeeper¼¯ÈºÄÔÁÑ£¨Split-Brain£©ÎÊÌâµÄÅŲéÀú³Ì£¬²¢Õ¹Ê¾»ùÓÚRaft¹²Ê¶Ë㷨ˢкóµÄHA£¨¸ß¿ÉÓ㩼ƻ®¡£¹ØÓÚÆóÒµÓû§×îÌåÌùµÄÇå¾²¹Ü¿ØÐèÇó£¬ÊÓÆµÌṩ´ÓKerberosÈÏÖ¤µ½Ï¸Á£¶ÈRBAC£¨»ùÓÚ½ÇÉ«µÄ»á¼û¿ØÖÆ£©µÄÍêÕûʵÏÖ·¾¶¡£
µÚËÄÕ£º´óÊý¾ÝÖÎÀíϵͳʵսÑݽø
ÔÚÊý¾ÝÖÊÁ¿¹Ü¿ØÁìÓò£¬½Ì³ÌÑÝʾÁËGreat Expectations¿ò¼ÜÓëSparkµÄÉî¶È¼¯³É£¬ÊµÏÖÊý¾Ý¼¯ÍêÕûÐÔУÑéµÄ×Ô¶¯»¯Á÷Ë®Ïß¡£Õë¶ÔÊý¾ÝѪԵ׷×Ù³¡¾°£¬½ÓÄÉApache AtlasÔªÊý¾ÝÖÎÀíϵͳ¹¹½¨¿ÉÊÓ»¯ÑªÔµÍ¼Æ×£¬ÕâÔÚij¿ç¹ú¼¯ÍŵÄGDPRºÏ¹æÉó¼ÆÖÐʩչҪº¦×÷Óá£ÌØÊâÖµµÃ¹Ø×¢µÄÊÇ£¬ÊÓÆµ´´Á¢ÐԵؽ«Êý¾ÝÖÎÀí£¨Data Governance£©Óë»úеѧϰƽ̨Á¬Ïµ£¬Í¨¹ý¶¯Ì¬ÌØÕ÷¼à¿ØÓÐÓÃÔ¤·ÀÄ£×ÓÆ¯ÒÆÎÊÌâ¡£ÕâÒ»Õ½ڻ¹Ïêϸ½â¶ÁÁËDelta LakeµÄACIDÊÂÎñÌØÕ÷ÔõÑù°ü¹ÜÆóÒµ¼¶Êý¾Ý¿ÍÕ»µÄ¶ÁдһÖÂÐÔ¡£
µÚÎåÕ£ºÆóÒµ¼¶¿ª·¢¹æ·¶ÓëЧÄÜÌáÉý
ÔÚÒ»Á¬¼¯³É»·½Ú£¬×ÏÌÙׯ԰Ìá³ö»ùÓÚJenkins PipelineµÄSpark×÷Òµ×Ô¶¯´ò°üÁ÷Ë®Ïß¡£Í¨¹ýSpark-TEA£¨Test Environment Automation£©¿ò¼ÜʵÏÖ²âÊÔÊý¾Ý×Ô¶¯ÌìÉúÓë¶àÇéÐÎÉèÖÃÖÎÀí£¬Ê¹Ä³µçÉ̿ͻ§µÄ°æ±¾Ðû²¼ÖÜÆÚËõ¶Ì60%¡£ÊÓÆµ»¹ÏµÍ³ÊáÀíÁËParquetÎļþÃûÌõÄÁÐʽ´æ´¢ÓÅ»¯¼¼ÇÉ£¬ÒÔ¼°Spark 3.0×Ô˳ӦÅÌÎÊÖ´ÐУ¨Adaptive Query Execution£©´øÀ´µÄÐÔÄÜÌáÉý°¸Àý¡£Õ½ÚÍêÕû·ºÆðÁËÒ»¸öÈÕ´¦Öóͷ£10ÒÚ¶©µ¥µÄʵʱ·´Ú²ÆÏµÍ³¹¹½¨È«Àú³Ì£¬º¸Ç´ÓFlinkÓëSparkÐͬÅÌËãµ½¶àÎ¬ÌØÕ÷ÒýÇæ¿ª·¢µÄÈ«ÊÖÒÕջʵ¼ù¡£
ÕâÌ×ÍêÕû°æ×ÏÌÙׯ԰Sparkʵ¼ùÊÓÆµµÄ¼ÛÖµ£¬ÔÚÓÚÂòͨÁË¿ªÔ´ÊÖÒÕµ½ÆóÒµ¼¶Â䵨µÄÒ»¹«Àï¡£Ëü²»µ«º¸ÇÅúÁ÷Ò»Ì壨Batch-Stream Unification£©¡¢ÅÌËã´æ´¢ÊèÉ¢µÈÇ°ÑØ¼Ü¹¹Éè¼Æ£¬¸üÉî¶ÈÆÊÎöÁËÉú²úÇéÐÎÖÐ×ÊÔ´µ÷Àí¡¢ÔÖ±¸»Ö¸´µÈÒªº¦ÔËάÊÖÒÕ¡£¹ØÓÚÍýÏë¹¹½¨±ê×¼»¯Êý¾ÝÖÐ̨µÄÆóÒµ£¬±¾½Ì³Ì¿É×÷ΪÍêÕûµÄÊÖÒÕʵÑéÖ¸ÄÏ£¬×ÊÖúÍŶӿìËٴÇкϽðÈÚ¼¶¿É¿¿ÐÔÒªÇóµÄ´óÊý¾Ý´¦Öóͷ£Æ½Ì¨¡£
Ò»¡¢È«¾°Êý¾Ý²¶»ñÊÖÒÕÖØËÜÊÂÎñ¼Í¼
»ùÓÚAIoT£¨È˹¤ÖÇÄÜÎïÁªÍø£©µÄÖÇÄÜÐÞ½¨ÏµÍ³£¬ÍêÕû¼Í¼ÁËÕⳡ¼«¾ßÏ·¾çÐÔµÄÅöÃæÈ«Àú³Ì¡£ÓÉÐÞ½¨ÖÎÀíÆ½Ì¨×Ô¶¯ÉÏ´«µÄÎÂʪ¶È´«¸ÐÆ÷Êý¾Ý£¬×¼È·»¹ÔÁË»áÎîʱ³¤Îª47·ÖÖÓµÄÇéÐÎϸ½Ú¡£ÉùÎÆÊ¶±ðÏÏû³Á¬Ïµ×Ô¶¯ÓïÒôתдÊÖÒÕ£¬½«Ì¸»°ÄÚÈݵÄ70%ת»¯Îª¿ÉÆÊÎöÎı¾¡£ÕâÖÖÊý¾ÝÊÕÂÞ·½·¨µÄˢУ¬Ê¹µÃ¹Å°å"±ÕÞۻá"ת±äΪ¿ÉÁ¿»¯ÆÊÎöµÄ¾öÒéÑù±¾¡£µ±Êý¾Ýƽ̨½«ÊÂÎñÒªËØÒÔÈýάʱ¼äÖá·ºÆðʱ£¬ÎÒÃÇ·¢Ã÷ÂÀ×ÜÌá³öÕ½ÂÔתÐ͵Äʱ¼ä½Úµã£¬ÕýºÃÓëÆóÒµÓßÇé¼à²âϵͳÏÔʾµÄ¹É¼Û²¨¶¯±¬·¢¹ØÁª¡£
¶þ¡¢Í¸Ã÷³¡¾°Éè¼Æ±³ºóµÄÖÎÀíÖÇ»Û
Â䵨´°ÕâÒ»ÌØÊⳡÓòµÄÑ¡Ôñ°µº¬ÉîÒâ¡£ÔÚ²£Á§Ä»Ç½¿ÉÊÓ»¯µÄÎïÀí¿Õ¼äÀÖÎÀíÕßµÄÖ«ÌåÓïÑÔºÍÃæ²¿ÐÄÇé±»×ÔÈ»¹âÕÕÍêÕû¼Í¼¡£ÐÐΪÊý¾ÝÆÊÎöÏÔʾ£¬ÕÅÂÉÓåÔÚÌÖÂÛÊг¡Î£º¦Ê±µÄÉíÌåǰÇã·ù¶ÈµÖ´ï25¡ã£¬ÕâÓëÆäÌá³öµÄΣº¦·À¿Ø¼Æ»®Ç¿¶È³ÊÕýÏà¹Ø¡£ÏÖ´úÆóÒµµÄ¿ª·Åʽ¾öÒ鳡¾°Éè¼Æ£¬ÊµÖÊÉÏÊÇͨ¹ýÇéÐÎѹÁ¦²âÊÔÀ´ÓÅ»¯ÉÌÒµÅжϡ£ÖµµÃ˼Ë÷µÄÊÇ£¬ÕâÖÖ͸Ã÷»¯»áÎîÊÇ·ñÕýÔÚÖØËÜÆóÒµµÄÖÎÀí½á¹¹£¿Êý¾Ýƽ̨ÌṩµÄ½»»¥Ê½¾öÒéÄ£×ÓÏÔʾ£¬³¡¾°Äܼû¶ÈÓë¾öÒéÓÐÓÃÐÔÖ®¼ä±£´æÌض¨ãÐÖµ¡£
Èý¡¢¶àÔ´Êý¾ÝÅöײ½ÒÆÆ½¹µãÕùÒéµã
µ±É罻ýÌåÌÖÂÛÈÈͼ£¨Heat Map£©µþ¼ÓÓßÇé¼à²âƽ̨µÄÉùÁ¿ÇúÏßʱ£¬¹«ÖÚ¹Ø×¢µÄ½¹µã·ºÆðÀëÉ¢ÂþÑÜÌØÕ÷¡£ÊÓÆµÆ¬¶ÏÖÐÂÀ×ÜÖØ¸´²ÁÊÃÂ䵨´°µÄϸ½Ú£¬¾ÇéÐ÷ÆÊÎöϵͳÅжÏΪ½¹ÂÇÖ¸ÊýµÄÖ±¹ÛÌåÏÖ¡£¶øÌõÔ¼Îı¾µÄÒªº¦Ìõ¿îÔÚNLP£¨×ÔÈ»ÓïÑÔ´¦Öóͷ££©ÆÊÎöºó£¬ÓëÏÖ³¡Â¼Òô±£´æ32%µÄ±íÊö²î±ð¡£ÕâÖÖ¶àģ̬Êý¾ÝµÄ½»Ö¯±È¶Ô£¬Õ¹ÏÖÁËÏÖ´úÆóҵΣ»úÖÎÀíÖÐÊý¾ÝÑéÖ¤µÄÖ÷ÒªÐÔ¡£ÆóÒµÊý¾ÝÖÐ̨µÄ½¨Éèˮƽ£¬Ö±½ÓÓ°Ïì×Å´ËÀàÊÂÎñµÄÚ¹ÊÍȨ¹éÊô¡£
ËÄ¡¢¾öÒéÊ÷Ä£×Ó»¹ÔÕ½ÂÔÑ¡Ôñ·¾¶
ͨ¹ý¹¹½¨¶¯Ì¬¾öÒéÊ÷£¨Decision Tree£©ÆÊÎö¿ò¼Ü£¬ÎÒÃÇ¿ÉÒÔÇåÎú¿´µ½ÂÀ×ÜÌá³öµÄÈýÌ×½â¾ö¼Æ»®¸÷×ÔÈ¨ÖØ¡£Êý¾Ý±ê×¢ÏÔʾ£¬ÕÅÂÉÓåÔÚΣº¦ÆÀ¹À»·½ÚÈý´Î´¥·¢ÏµÍ³Ô¤ÉèµÄºìÏß¾¯±¨¡£ÕâÖÖÖÇÄܾöÒ鸨ÖúϵͳµÄ½éÈ룬ÓÐÓÃ×èÖ¹Á˹ŰåÂÄÀúÖ÷Òå¿ÉÄܵ¼ÖµÄÕ½ÂÔÎó²î¡£ÓÐȤµÄÊÇ£¬¶Ô»°ÖÐÉæ¼°µÄÊг¡Êý¾ÝÓëÆ½Ì¨ÊµÊ±×¥È¡µÄÐÐÒµ¶¯Ì¬±£´æ18СʱµÄʱ¼ä²î£¬ÕâÖÖÊý¾ÝÖͺóÐÔÕýÔÚ³ÉΪÏÖ´úÆóÒµ¾öÒéµÄÐÂΣº¦µã¡£
Îå¡¢ÆóÒµÓßÇéÖÎÀíϵͳӦ¶Ô»úÖÆÆÊÎö
ÊÂÎñ±¬·¢ºó3СʱÄÚ£¬ÓßÇé¼à²âƽ̨¼´ÌìÉú12ά¶ÈµÄÓ¦¶Ô¼Æ»®¾ØÕ󡣯¾Ö¤ÇéÐ÷ÆÊÎöϵͳµÄÅÌËãЧ¹û£¬¹«ÖÚ¶Ô"Â䵨´°"ÒªËØµÄ¹Ø×¢¶È³¬Ô¤ÆÚÔöÌí63%¡£ÆóÒµµÄΣ»ú¹«¹ØÍŶӽÓÄÉAIÌìÉúµÄÉùÃ÷¿ò¼Ü£¬ÔÚÊÂʵºË²éϵͳȷÈϺó37·ÖÖÓÍê³É¹Ù·½»ØÓ¦¡£ÕâÖÖÓÉÊý¾ÝÇý¶¯µÄÓ¦¼±ÏìÓ¦»úÖÆ£¬½«¹Å°å72Сʱ»Æ½ðÓ¦¶Ôʱ¼äѹËõÖÁÊÖÒտɿعæÄ£¡£µ«ÖµµÃСÐĵÄÊÇ£¬Êý¾ÝϵͳµÄÌ«¹ýÒÀÀµ¿ÉÄÜÈõ»¯ÆóÒµµÄÈËÐÔ»¯ÏàͬÄÜÁ¦¡£
Áù¡¢ÔÆÊý¾ÝÆ½Ì¨ÖØ¹¹ÊÂÎñ¼ÛÖµÆÀ¹À
´æ´¢ÔÚÔÆ¶ËµÄÊÂÎñÈ«Á¿Êý¾Ý¼¯£¬Õýͨ¹ý»úеѧϰģ×ÓÒ»Á¬±¬·¢Ð¶´²ì¡£»áÎîÊÓÆµÖ¡ÂÊÓëÉùµ÷ÇúÏߵį¥ÅäÆÊÎö£¬Õ¹ÏÖ³ö̸ÅнÚ×à¿ØÖÆµÄDZÔÚ¼ÍÂÉ¡£¶ø¹ØÁªÆóÒµµÄ²ÆÎñ±¨±íÊý¾Ý½»Ö¯ÆÊÎöÏÔʾ£¬ÂÀ×ÜÌá³öµÄÕ½ÂÔµ÷½â¼Æ»®¾ßÓÐÐÐÒµ´«µ¼Ð§Ó¦¡£µ±ÉÌÒµÖÇÄÜϵͳ½«Õâ´ÎÅöÃæÄÉÈëÆóÒµ¾öÒé֪ʶͼÆ×ʱ£¬Í»·¢ÊÂÎñ¼´×ª±äΪ¿É¸´ÓõÄÖÎÀí°¸Àý¿â¡£ÕâÖÖÊý¾Ý¼ÛÖµµÄ¶þ´ÎÍÚ¾ò£¬±ê¼Ç×ÅÏÖ´úÆóÒµ¾öÒéÖ§³ÖϵͳµÄ·¶Ê½×ª±ä¡£
ÕÅÂÉÓåÓëÂÀ×ܵÄÂ䵨´°Ö®Ô¼ÊÂÎñ£¬ÔÚÊý¾ÝÊÖÒյĽ⹹Ï·ºÆð³ö¶àάÉÌÒµ¼ÛÖµ¡£´ÓÖÇÄÜÐÞ½¨ÏµÍ³µÄ±»¶¯¼Í¼£¬µ½¾öÒéÖ§³ÖϵͳµÄ×Ô¶¯½éÈ룬ÏÖ´úÆóÒµµÄÖØ´óÊÂÎñ´¦Öóͷ£»úÖÆÒÑÐγÉÍêÕûÊÖÒÕ±Õ»·¡£ÔÚÊý¾Ýƽ̨µÄÒ»Á¬µü´úÖУ¬ÀàËÆÊÂÎñµÄÆÊÎö¾«¶È½«ÌáÉýÖÁ·ÖÖÓ¼¶ÏìÓ¦¡£µ«Ð辯ÐѵÄÊÇ£¬Ë㷨ģ×ÓʼÖÕÓ¦ÊǾöÒéÕߵĸ¨Öú¹¤¾ß£¬ÄÇЩÂ䵨´°Ç°µÄÉî¶È˼Ë÷ÓëÈËÐÔÅжϣ¬²ÅÊÇÉÌÒµÖǻ۵Ļù´¡Ô´Èª¡£