Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
Apache SparkµÄLambda¼Ü¹¹Ê¾ÀýÓ¦ÓÃ
 
×÷ÕߣºÌïÏþÐñ
  2782  次浏览      31
 2019-12-30
 
±à¼­ÍƼö:
±¾ÎÄÖн«ÀûÓÃApache Spark(Core£¬SQL£¬Streaming)£¬Apache Parquet£¬Twitter StreamµÈʵʱÁ÷Êý¾Ý¿ìËÙ·ÃÎÊÀúÊ·Êý¾Ý¡£Ï£Íû¶ÔÄúÓÐËù°ïÖú
±¾ÎÄÀ´×ÔÓÚit168£¬ÓÉ»ðÁú¹ûÈí¼þDelores±à¼­¡¢ÍƼö¡£

Apache Hadoop¼òÊ·

¡¡Apache HadoopÓÉ Apache Software Foundation ¹«Ë¾ÓÚ 2005 ÄêÇïÌì×÷ΪLuceneµÄ×ÓÏîÄ¿NutchµÄÒ»²¿·ÖÕýʽÒýÈë¡£ËüÊܵ½×îÏÈÓÉ Google Lab ¿ª·¢µÄ Map/Reduce ºÍ Google File System(GFS) µÄÆô·¢¡£Ëü³ÉΪһ¸ö¶ÀÁ¢ÏîÄ¿µÄʱ¼äÒÑÓÐ10Äê¡£

ĿǰÒѾ­Óкܶà¿Í»§ÊµÊ©ÁË»ùÓÚHadoopµÄM / R¹ÜµÀ£¬²¢³É¹¦ÔËÐе½ÏÖÔÚ£º

OozieµÄ¹¤×÷Á÷ÿÈÕÔËÐд¦Àí150TBÒÔÉϵÄÊý¾Ý²¢Éú³É·ÖÎö±¨¸æ

¡¡BashµÄ¹¤×÷Á÷ÿÈÕÔËÐд¦Àí8TBÒÔÉϵÄÊý¾Ý²¢Éú³É·ÖÎö±¨¸æ

2016ÄêÉÌÒµÏÖʵ·¢ÉúÁ˱仯£¬Ô½¿ì×ö³ö¾ö²ßÍùÍù¼ÛÖµ¾Í»áÔ½´ó¡£ÁíÍ⣬¼¼Êõ±¾ÉíÒ²ÔÚ·¢Õ¹£¬Kafka£¬Storm£¬Trident£¬Samza£¬Spark£¬Flink£¬Parquet£¬Avro£¬ÔÆÌṩÉ̵ȶ¼³ÉΪÁ˹¤³ÌʦÃǵÄÁ÷ÐÐÓï

Òò´Ë£¬ÏÖ´ú»ùÓÚHadoopµÄM / R¹ÜµÀ¿ÉÄÜ»áÊÇÏÂͼËùʾµÄÕâÑù£º

ͼÉϵÄM/RͨµÀ¿´ÆðÀ´²»´í£¬µ«ÆäʵËü±¾ÖÊÉÏ»¹ÊÇÒ»¸ö´«Í³µÄÅú´¦Àí£¬ÓÐ×Å´«Í³Åú´¦ÀíµÄȱµã£¬µ±ÐµÄÊý¾ÝÔ´Ô´²»¶ÏµÄ½øÈëϵͳÖÐʱ£¬»¹ÊÇÐèÒª´óÁ¿µÄʱ¼äÀ´´¦Àí¡£

¡¡¡¡

Lambda ¼Ü¹¹

Õë¶ÔÉÏÃæµÄÎÊÌ⣬Nathan MarzÌá³öÁËÒ»¸öͨÓᢿÉÀ©Õ¹ºÍÈÝ´íÐÔÇ¿µÄÊý¾Ý´¦Àí¼Ü¹¹¼´Lambda¼Ü¹¹£¬ËüÊÇͨ¹ýÀûÓÃÅú´¦ÀíºÍÁ÷´¦Àí·½·¨À´´¦Àí´óÁ¿Êý¾ÝµÄ¡£Nathan MarzµÄÊé¶Ô´ÓÔ´ÂëµÄ½Ç¶È¶ÔLambda¼Ü¹¹½øÐÐÁËÏ꾡µÄ½éÉÜ¡£

²ã½á¹¹

ÕâÊÇLambda¼Ü¹¹×ÔÉ϶øÏµIJã½á¹¹£º

ËùÓÐÊý¾Ý½øÈëϵͳºó¶¼·ÖÅɵ½Åú´¦Àí²ãºÍËÙ¶È²ã½øÐд¦Àí¡£Åú´¦Àí²ã¹ÜÀíÖ÷Êý¾Ý¼¯(Ò»¸ö²»¿É±äµÄ£¬Ö»¿ÉÔö¼ÓµÄԭʼÊý¾Ý¼¯)£¬²¢Ô¤ÏȼÆËãÅú´¦ÀíÊÓͼ¡£ ·þÎñ²ã¶ÔÅúÊÓͼ½øÐÐË÷Òý£¬ÒÔ±ã¿ÉÒÔ½øÐеÍÑÓ³ÙµÄÁÙʱ²éѯ¡£ ËٶȲã½ö´¦Àí×î½üµÄÊý¾Ý¡£ËùÓеIJéѯ½á¹û¶¼±ØÐëºÏ²¢Åú´¦ÀíÊÓͼºÍʵʱÊÓͼµÄ²éѯ½á¹û¡£

¡¡Òªµã

Ðí¶à¹¤³ÌʦÈÏΪLambda¼Ü¹¹¾ÍÖ»°üº¬²ã½á¹¹ºÍ¶¨ÒåÊý¾ÝÁ÷³Ì£¬µ«ÊÇNathan MarzµÄÊéÖÐΪÎÒÃǽéÉÜÁËÆäËü¼¸¸ö±È½ÏÖØÒªµÄµã£º

·Ö²¼Ê½Ë¼Ïë

±ÜÃâÔöÁ¿½á¹¹

Êý¾ÝµÄ²»±äÐÔ

´´½¨ÖØÐ¼ÆËãËã·¨

Êý¾ÝµÄÏà¹ØÐÔ

ÈçǰËùÊö£¬Èκβéѯ½á¹û¶¼±ØÐëͨ¹ýºÏ²¢À´×ÔÅú´¦ÀíÊÓͼºÍʵʱÊÓͼµÄ½á¹û£¬Òò´ËÕâЩÊÓͼ±ØÐëÊǿɺϲ¢µÄ¡£ÔÚÕâÀïҪעÒâµÄÒ»µãÊÇ£¬ÊµÊ±ÊÓͼÊÇǰһ¸öʵʱÊÓͼºÍÐÂÊý¾ÝÔöÁ¿µÄº¯Êý£¬Òò´ËÕâÀïʹÓÃÔöÁ¿Ëã·¨£¬Åú´¦ÀíÊÓͼÊÇËùÓÐÊý¾ÝµÄº¯Êý£¬Òò´ËÓ¦¸ÃʹÓÃÖØÐ¼ÆËãËã·¨¡£

¡¡È¨ºâ

¡¡ÊÀ¼äÍòÎï¶¼ÊÇÔÚ²»¶ÏÍ×ЭºÍȨºâÖз¢Õ¹µÄ£¬Lambda½á¹¹Ò²²»ÀýÍ⡣ͨ³££¬ÎÒÃÇÐèÒª½â¾ö¼¸¸öÖ÷ÒªµÄȨºâ£º

¡¡ÍêÈ«ÖØÐ¼ÆËã vs.²¿·ÖÖØÐ¼ÆËã

ÔÚÓÐЩÇé¿öÏ£¬¿ÉÒÔʹÓÃBloom¹ýÂËÆ÷À´±ÜÃâÍêÈ«ÖØÐ¼ÆËã

ÖØ¼ÆËãËã·¨ vs. ÔöÁ¿Ëã·¨

ÔöÁ¿Ëã·¨ÆäʵºÜ¾ßÎüÒýÁ¦£¬µ«ÊÇÓÐʱ¸ù¾ÝÖ¸ÄÏ£¬ÎÒÃDZØÐëʹÓÃÖØ¼ÆËãËã·¨£¬¼´±ãËüºÜÄѵõ½ÏàͬµÄ½á¹û

¡¡¼Ó·¨Ëã·¨ vs. ½üËÆËã·¨

¡¡ËäÈ»Lambda¼Ü¹¹Äܹ»Óë¼Ó·¨Ëã·¨ºÜºÃµØÐ­Í¬¹¤×÷£¬µ«ÊÇÔÚÓÐЩÇé¿öϸüÊʺÏʹÓýüËÆËã·¨£¬ÀýÈçʹÓÃHyperLogLog´¦Àícount-distinctÎÊÌâ¡£

ʵÏÖ

¡¡ÊµÏÖLambda¼Ü¹¹µÄ·½·¨Óкܶ࣬ÒòΪÿ¸ö²ãµÄµ×²ã½â¾ö·½°¸ÊǶÀÁ¢µÄ¡£Ã¿¸ö²ãÐèÒªµ×²ãʵÏÖµÄÌØ¶¨¹¦ÄÜ£¬ÓÐÖúÓÚ×ö³ö¸üºÃµÄÑ¡Ôñ²¢±ÜÃâ¹ý¶È¾ö²ß£º

¡¡ÅúÁ¿²ã£ºÒ»´ÎдÈ룬ÅúÁ¿¶ÁÈ¡¶à´Î

·þÎñ²ã£ºÖ§³ÖËæ»ú¶ÁÈ¡µ«²»Ö§³ÖËæ»úдÈë; ÅúÁ¿¼ÆËãºÍÅúÁ¿Ð´Èë

ËÙ¶È²ã£ºËæ»ú¶Áд; ÔöÁ¿¼ÆËã

ÀýÈ磬ÆäÖÐÒ»¸öʵÏÖ(ʹÓÃKafka£¬Apache Hadoop£¬Voldemort£¬Twitter Storm£¬Cassandra)¿ÉÄÜÈçÏÂËùʾ£º

Apache Spark

¡¡Apache Spark±»ÊÓΪÔÚËùÓÐLambda¼Ü¹¹²ãÉϽøÐд¦ÀíµÄ¼¯³É½â¾ö·½°¸¡£ ÆäÖÐSpark Core°üº¬Á˸߼¶APIºÍÖ§³Ö³£¹æÖ´ÐÐͼµÄÓÅ»¯ÒýÇæ£¬SparkSQLÓÃÓÚSQLºÍ½á¹¹»¯Êý¾Ý´¦Àí£¬Spark StreamingÖ§³ÖʵʱÊý¾ÝÁ÷µÄ¿ÉÀ©Õ¹£¬¸ßÍÌÍÂÁ¿£¬ÈÝ´íÁ÷´¦Àí¡£ µ±È»£¬Ê¹ÓÃSpark½øÐÐÅú´¦ÀíµÄ¼Û¸ñ¿ÉÄܱȽϸߣ¬¶øÇÒÒ²²»ÊÇËùÓеij¡¾°ºÍÊý¾Ý¶¼Êʺϡ£µ«ÊÇ£¬×ÜÌåÀ´ËµApache SparkÊǶÔLambda¼Ü¹¹µÄºÏÀíʵÏÖ¡£

¡¡Ê¾ÀýÓ¦ÓÃ

¡¡ÎÒÃÇ´´½¨Ò»¸öʾÀýÓ¦ÓóÌÐòÀ´ÑÝʾLambda¼Ü¹¹¡£Õâ¸öʾÀýµÄÖ÷ҪĿµÄͳ¼Æ´Óij¸öʱ¿Ìµ½ÏÖÔڴ˿̵Ä#morningatlohika tweets¹þÏ£±êÇ©¡£

¡¡Åú´¦ÀíÊÓͼ

¡¡ÎªÁ˼òµ¥Æð¼û£¬¼ÙÉèÎÒÃǵÄÖ÷Êý¾Ý¼¯°üº¬×Ôʱ¼ä¿ªÊ¼ÒÔÀ´µÄËùÓÐtweets¡£ ´ËÍ⣬ÎÒÃÇʵÏÖÁËÒ»¸öÅú´¦Àí£¬´´½¨ÁËÎÒÃǵÄÒµÎñÄ¿±êËùÐèµÄÅú´¦ÀíÊÓͼ£¬Òò´ËÎÒÃÇÓÐÒ»¸öÔ¤¼ÆËãµÄÅú´¦ÀíÊÓͼ£¬ÆäÖаüº¬Óë#morningatlohikaÒ»ÆðʹÓõÄËùÓÐÖ÷Ìâ±ê¼ÇµÄͳ¼ÆÐÅÏ¢£º

ÒòΪÊý×Ö·½±ã¼ÇÒ䣬ËùÒÔÎÒʹÓöÔÓ¦±êÇ©µÄÓ¢Îĵ¥´ÊµÄ×ÖĸÊýÄ¿×÷Ϊ±àºÅ¡£

¡¡ÊµÊ±ÊÓͼ

µ±Ó¦ÓóÌÐòÆô¶¯²¢ÔËÐÐʱ£¬ÓÐÈË·¢³öÁËÈçϵÄtweet:

ÔÚÕâÖÖÇé¿öÏ£¬ÕýÈ·µÄʵʱÊÓͼӦ°üº¬ÒÔϱêÇ©¼°Æäͳ¼ÆÐÅÏ¢(ÔÚÎÒÃǵÄʾÀýÖÐΪ1£¬ÒòΪÏàÓ¦µÄhash±êǩֻʹÓÃÁËÒ»´Î)

²éѯ

¡¡µ±ÖÕ¶ËÓû§²éѯhash±êÇ©µÄͳ¼Æ½á¹ûʱ£¬ÎÒÃÇÖ»ÐèÒª½«ÅúÁ¿ÊÓͼÓëʵʱÊÓͼºÏ²¢ÆðÀ´¡£ ËùÒÔÊä³öÓ¦¸ÃÈçÏÂËùʾ£º

¡¡³¡¾°

¡¡¡¡Ê¾Àý³¡¾°µÄ¼ò»¯²½ÖèÈçÏ£º

¡¡¡¡Í¨¹ýApache Spark´´½¨Åú´¦ÀíÊÓͼ(.parquet)

¡¡ÔÚApache SparkÖлº´æÅú´¦ÀíÊÓͼ

¡¡Á÷Ó¦ÓóÌÐòÁ¬½Óµ½Twitter

¡¡ÊµÊ±¼à¿Ø#morningatlohika tweets

¡¡¹¹½¨ÔöÁ¿ÊµÊ±ÊÓͼ

¡¡²éѯ£¬¼´ºÏ²¢Åú´¦ÀíÊÓͼºÍʵʱÊÓͼ

¡¡¡¡

¼¼Êõϸ½Ú

¡¡¡¡Ô´´úÂë»ùÓÚApache Spark 1.6.x£¬(ÔÚÒýÈë½á¹¹»¯Á÷֮ǰ)¡£ Spark Streaming¼Ü¹¹ÊÇ´¿Î¢ÐÍÅú´¦Àí¼Ü¹¹£º

¡¡ËùÒÔ´¦ÀíÁ÷Ó¦ÓóÌÐòʱ£¬ÎÒʹÓÃDStreamÁ¬½ÓʹÓÃTwitterUtilsµÄTwitter£º

ÔÚÿ¸ö΢Åú´Î(ʹÓÿÉÅäÖõÄÅú´¦Àí¼ä¸ô)£¬¶ÔеÄtweetsÖÐhashtagsµÄͳ¼ÆÐÅÏ¢µÄ¼ÆË㣬²¢Ê¹ÓÃupdateStateByKey()״̬ת»»º¯Êý¸üÐÂʵʱÊÓͼµÄ״̬¡£ ΪÁ˼òµ¥Æð¼û£¬Ê¹ÓÃÁÙʱ±í½«ÊµÊ±ÊÓͼ´æ´¢ÔÚ´æ´¢Æ÷ÖС£

²éѯ·þÎñ·´Ó³Åú´¦ÀíºÍʵʱÊÓͼµÄºÏ²¢£º

Êä³ö

¡¡ÎÄÕ¿ªÍ·Ìáµ½µÄ»ùÓÚHadoopµÄM/R¹ÜµÀʹÓÃApache SparkÀ´ÓÅ»¯£º

¡¡ºó¼Ç£º

¡¡ÕýÈç֮ǰÌáµ½µÄLambda ArchitectureÓÐÆäÓŵãºÍȱµã£¬ËùÒÔÖ§³ÖÕߺͷ´¶ÔÕß¶¼ÓС£ ÓÐЩÈË˵Åú´¦ÀíÊÓͼºÍʵʱÊÓͼÓкܶàÖØ¸´µÄÂß¼­£¬ÒòΪ×îÖÕËûÃÇÐèÒª´Ó²éѯ½Ç¶È´´½¨¿ÉºÏ²¢µÄÊÓͼ¡£ ËùÒÔËûÃÇ´´½¨ÁËÒ»¸öKappa¼Ü¹¹£¬²¢³ÆÆäΪLambda¼Ü¹¹µÄ¼ò»¯°æ¡£ Kappa¼Ü¹¹ÏµÍ³ÊÇɾ³ýÁËÅú´¦Àíϵͳ£¬È¡¶ø´úÖ®µÄÊÇͨ¹ýÁ÷ϵͳ¿ìËÙÌṩÊý¾Ý£º

¡¡µ«¼´Ê¹ÔÚÕâÖÖÇé¿öÏ£¬Kappa ArchitectureÖÐÒ²¿ÉÒÔÓ¦ÓÃApache Spark£¬ÀýÈçÁ÷´¦Àíϵͳ£º

 
   
2782 ´Îä¯ÀÀ       31
Ïà¹ØÎÄÕÂ

»ùÓÚEAµÄÊý¾Ý¿â½¨Ä£
Êý¾ÝÁ÷½¨Ä££¨EAÖ¸ÄÏ£©
¡°Êý¾Ýºþ¡±£º¸ÅÄî¡¢ÌØÕ÷¡¢¼Ü¹¹Óë°¸Àý
ÔÚÏßÉ̳ÇÊý¾Ý¿âϵͳÉè¼Æ ˼·+Ч¹û
 
Ïà¹ØÎĵµ

GreenplumÊý¾Ý¿â»ù´¡Åàѵ
MySQL5.1ÐÔÄÜÓÅ»¯·½°¸
ijµçÉÌÊý¾ÝÖÐ̨¼Ü¹¹Êµ¼ù
MySQL¸ßÀ©Õ¹¼Ü¹¹Éè¼Æ
Ïà¹Ø¿Î³Ì

Êý¾ÝÖÎÀí¡¢Êý¾Ý¼Ü¹¹¼°Êý¾Ý±ê×¼
MongoDBʵս¿Î³Ì
²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
PostgreSQLÊý¾Ý¿âʵսÅàѵ