±à¼ÍƼö: |
±¾ÎÄÀ´×ÔÓÚinfoq£¬±¾ÎĽáºÏͼÀýÏêϸ½éÉÜÁËÃÀÍÅĿǰʵʱ¼ÆËãÆ½Ì¨µÄ¼òÒª¼Ü¹¹£¬ÏÖ×´ÒÔ¼°FlinkÔÚÃÀÍŵÄʵ¼ù¡£ |
|
ÃÀÍÅʵʱ¼ÆËãÆ½Ì¨ÏÖ×´ºÍ±³¾°
ʵʱƽ̨¼Ü¹¹

ÉÏͼ³ÊÏÖµÄÊǵ±Ç°ÃÀÍÅʵʱ¼ÆËãÆ½Ì¨µÄ¼òÒª¼Ü¹¹¡£×îµ×²ãÊÇÊý¾Ý»º´æ²ã£¬¿ÉÒÔ¿´µ½ÃÀÍŲâµÄËùÓÐÈÕÖ¾ÀàµÄÊý¾Ý£¬¶¼ÊÇͨ¹ýͳһµÄÈÕÖ¾ÊÕ¼¯ÏµÍ³ÊÕ¼¯µ½Kafka¡£Kafka×÷Ϊ×î´óµÄÊý¾ÝÖÐת²ã£¬Ö§³ÅÁËÃÀÍÅÏßÉϵĴóÁ¿ÒµÎñ£¬°üÀ¨ÀëÏßÀÈ¡£¬ÒÔ¼°²¿·Öʵʱ´¦ÀíÒµÎñµÈ¡£ÔÚÊý¾Ý»º´æ²ãÖ®ÉÏ£¬ÊÇÒ»¸öÒýÇæ²ã£¬ÕâÒ»²ãµÄ×ó²àÊÇÎÒÃÇĿǰÌṩµÄʵʱ¼ÆËãÒýÇæ£¬°üÀ¨StormºÍFlink¡£StormÔÚ´Ë֮ǰÊÇ
standalone ģʽµÄ²¿Êð·½Ê½£¬FlinkÓÉÓÚÆäÏÖÔÚÔËÐеĻ·¾³£¬ÃÀÍÅÑ¡ÔñµÄÊÇOn YARNģʽ£¬³ýÁ˼ÆËãÒýÇæÖ®Í⣬ÎÒÃÇ»¹ÌṩһЩʵʱ´æ´¢¹¦ÄÜ£¬ÓÃÓÚ´æ´¢¼ÆËãµÄÖмä״̬¡¢¼ÆËãµÄ½á¹û¡¢ÒÔ¼°Î¬¶ÈÊý¾ÝµÈ£¬Ä¿Ç°ÕâÒ»Àà´æ´¢°üº¬Hbase¡¢RedisÒÔ¼°ES¡£ÔÚ¼ÆËãÒýÇæÖ®ÉÏ£¬ÊÇÇ÷ÓÚÎ廨°ËÃŵÄÒ»²ã£¬ÕâÒ»²ãÖ÷ÒªÃæÏòÊý¾Ý¿ª·¢µÄͬѧ¡£
ʵʱÊý¾Ý¿ª·¢ÃæÁÙÖî¶àÎÊÌ⣬ÀýÈçÔÚ³ÌÐòµÄµ÷ÊÔµ÷ÓÅ·½Ãæ¾ÍÒª±ÈÆÕͨµÄ³ÌÐò¿ª·¢À§ÄѺܶࡣÔÚÊý¾Ýƽ̨ÕâÒ»²ã£¬ÃÀÍÅÃæÏòÓû§ÌṩµÄʵʱ¼ÆËãÆ½Ì¨£¬²»½ö¿ÉÒÔÍйÜ×÷Òµ£¬»¹¿ÉÒÔʵÏÖµ÷ÓÅÕï¶ÏÒÔ¼°¼à¿Ø±¨¾¯£¬´ËÍ⻹ÓÐʵʱÊý¾ÝµÄ¼ìË÷ÒÔ¼°È¨ÏÞ¹ÜÀíµÈ¹¦ÄÜ¡£³ýÁËÌá¹©ÃæÏòÊý¾Ý¿ª·¢Í¬Ñ§µÄʵʱ¼ÆËãÆ½Ì¨£¬ÃÀÍÅÏÖÔÚÕýÔÚ×öµÄÊÂÇ黹°üÀ¨¹¹½¨ÔªÊý¾ÝÖÐÐÄ¡£ÕâÒ²ÊÇδÀ´ÎÒÃÇÏë×öSQLµÄÒ»¸öǰÌᣬԪÊý¾ÝÖÐÐÄÊdzÐÔØÊµÊ±Á÷ϵͳµÄÒ»¸öÖØÒª»·½Ú£¬ÎÒÃÇ¿ÉÒÔ°ÑËüÀí½âΪʵʱϵͳÖеĴóÄÔ£¬Ëü¿ÉÒÔ´æ´¢Êý¾ÝµÄSchema£¬Meta¡£¼Ü¹¹µÄ×î¶¥²ã¾ÍÊÇÎÒÃÇÏÖÔÚʵʱ¼ÆËãÆ½Ì¨Ö§³ÅµÄÒµÎñ£¬²»½ö°üº¬ÏßÉÏÒµÎñÈÕÖ¾µÄʵʱ²éѯºÍ¼ìË÷£¬»¹º¸Çµ±ÏÂÊ®·ÖÈÈÃŵÄʵʱ»úÆ÷ѧϰ¡£
»úÆ÷ѧϰ¾³£»áÉæ¼°µ½ËÑË÷ºÍÍÆ¼ö³¡¾°£¬ÕâÁ½¸ö³¡¾°×îÏÔÖøÌØµã£ºÒ»¡¢»á²úÉúº£Á¿ÊµÊ±Êý¾Ý£»¶þ¡¢Á÷Á¿µÄQPSÏ൱¸ß¡£´Ëʱ¾ÍÐèҪʵʱ¼ÆËãÆ½Ì¨³ÐÔØ²¿·ÖÊµÊ±ÌØÕ÷µÄÌáÈ¡¹¤×÷£¬ÊµÏÖÓ¦ÓõÄËÑË÷ÍÆ¼ö·þÎñ¡£»¹ÓÐÒ»ÀàÊDZȽϳ£¼ûµÄ³¡¾°£¬°üÀ¨ÊµÊ±µÄÌØÕ÷¾ÛºÏ£¬°ßÂíWatcher£¨¿ÉÒÔÈÏΪÊÇÒ»¸ö¼à¿ØÀàµÄ·þÎñ£©£¬ÊµÊ±Êý²ÖµÈ¡£
ÒÔÉϾÍÊÇÃÀÍÅĿǰʵʱ¼ÆËãÆ½Ì¨µÄ¼òÒª¼Ü¹¹¡£
ʵʱƽ̨ÏÖ×´
ÃÀÍÅʵʱ¼ÆËãÆ½Ì¨µÄÏÖ×´ÊÇ×÷ÒµÁ¿ÏÖÔÚÒѾ´ïµ½Á˽üÍò£¬¼¯ÈºµÄ½ÚµãµÄ¹æÄ£ÊÇǧ¼¶±ðµÄ£¬Ìì¼¶ÏûÏ¢Á¿ÒѾ´ïµ½ÁËÍòÒÚ¼¶£¬¸ß·åÆÚµÄÏûÏ¢Á¿Äܹ»´ïµ½Ç§ÍòÌõÿÃë¡£
Í´µãºÍÎÊÌâ
ÃÀÍÅÔÚµ÷ÑÐʹÓÃFlink֮ǰÓöµ½ÁËһЩʹµãºÍÎÊÌâ:
1.ʵʱ¼ÆË㾫ȷÐÔÎÊÌ⣺ÔÚµ÷ÑÐʹÓÃFlink֮ǰÃÀÍźܴó¹æÄ£µÄ×÷ÒµÊÇ»ùÓÚStormÈ¥¿ª·¢µÄ£¬StormÖ÷ÒªµÄ¼ÆËãÓïÒåÊÇAt-Least-Once£¬ÕâÖÖÓïÒåÔÚ±£Ö¤ÕýÈ·ÐÔÉÏʵ¼ÊÉÏÊÇÓÐһЩÎÊÌâµÄ£¬ÔÚTrident֮ǰStormÊÇÎÞ״̬µÄ´¦Àí¡£ËäÈ»Storm
TridentÌṩÁËÒ»¸öά»¤×´Ì¬µÄ¾«È·µÄ¿ª·¢£¬µ«ÊÇËüÊÇ»ùÓÚ´®ÐеÄBatchÌá½»µÄ£¬ÄÇôÓöµ½ÎÊÌâÔÚ´¦ÀíÐÔÄÜÉÏ¿ÉÄÜ»áÓÐÒ»µãÆ¿¾±¡£²¢ÇÒTridentÊÇ»ùÓÚ΢ÅúµÄ´¦Àí£¬ÔÚÑÓ³ÙÉÏûÓдﵽ±È½Ï¸ßµÄÒªÇó£¬ËùÒÔ²»ÄÜÂú×ãһЩ¶ÔÑӳٱȽϸßÐèÇóµÄÒµÎñ¡£
2.Á÷´¦ÀíÖеÄ״̬¹ÜÀíÎÊÌ⣺»ùÓÚ֮ǰµÄÁ÷´¦Àí¹ý³ÌÖÐ״̬¹ÜÀíµÄÎÊÌâÊǷdz£´óµÄÒ»ÀàÎÊÌ⡣״̬¹ÜÀí³ýÁË»áÓ°Ïìµ½±ÈÈç˵¼ÆËã״̬µÄÒ»ÖÂÐÔ£¬»¹»áÓ°Ï쵽ʵʱ¼ÆËã´¦ÀíµÄÐÔÄÜÒÔ¼°¹ÊÕϻָ´Ê±ºòµÄÄÜÁ¦¡£¶øFlink×îÍ»³öµÄÒ»¸öÓÅÊÆ¾ÍÊÇ״̬¹ÜÀí¡£
3.ʵʱ¼ÆËã±íÒåÄÜÁ¦µÄ¾ÖÏÞÐÔ£ºÔÚʵʱ¼ÆËã֮ǰºÜ¶à¹«Ë¾´ó²¿·ÖµÄÊý¾Ý¿ª·¢»¹ÊÇÃæÏòÀëÏߵij¡¾°£¬½ü¼¸ÄêʵʱµÄ³¡¾°Ò²ÂýÂý»ðÈÈÆðÀ´ÁË¡£ÄÇÓëÀëÏߵĴ¦Àí²»Í¬µÄÊÇ£¬ÊµÊ±µÄ³¡¾°Ï£¬Êý¾Ý´¦ÀíµÄ±íÒâÄÜÁ¦¿ÉÄÜÓÐÒ»¶¨µÄÏÞÖÆ£¬±ÈÈç˵ËûÒª½øÐо«È·¼ÆËãÒÔ¼°Ê±¼ä´°¿Ú¶¼ÊÇÐèÒªÔÚ´ËÖ®ÉÏÈ¥¿ª·¢ºÜ¶à¹¦ÄÜÐԵĶ«Î÷¡£
4.¿ª·¢µ÷ÊԳɱ¾¸ß£º½üǧ½áµãµÄ¼¯ÈºÉÏÒѾÅÜÁ˽üÍòµÄ×÷Òµ£¬·Ö²¼Ê½µÄ´¦ÀíµÄÒýÇæ£¬ÊÖ¹¤Ð´´úÂëµÄ·½Ê½£¬¸øÊý¾Ý¿ª·¢µÄͬѧҲ´øÀ´Á˺ܸ߿ª·¢ºÍµ÷ÊԵijɱ¾£¬ÔÙȥά»¤µÄʱºò£¬ÔËά³É±¾Ò²±È½Ï¸ß¡£
Flink̽Ë÷¹Ø×¢µã
ÔÚÉÏÃæÕâЩʹµãºÍÎÊÌâµÄ±³¾°Ï£¬ÃÀÍÅ´ÓÈ¥Ä꿪ʼ½øÐÐFlinkµÄ̽Ë÷£¬¹Ø×¢µãÖ÷ÒªÓÐÒÔÏÂ4¸ö·½Ã棺
1.ExactlyOnce¼ÆËãÄÜÁ¦
2.״̬¹ÜÀíÄÜÁ¦
3.´°¿Ú/Join/ʱ¼ä´¦ÀíµÈµÈ
4.SQL/TableAPI
FlinkÔÚÃÀÍŵÄʵ¼ù
ÏÂÃæ´ø´ó¼ÒÀ´¿´Ò»Ï£¬ÃÀÍÅ´ÓÈ¥ÄêͶÈëÉú²ú¹ý³ÌÖж¼Óöµ½ÁËÄÄЩÎÊÌ⣬ÒÔ¼°Ò»Ð©½â¾ö·½°¸£¬·ÖΪÏÂÃæÈý¸ö²¿·Ö£º
Îȶ¨ÐÔʵ¼ù
Îȶ¨ÐÔʵ¼ù-×ÊÔ´¸ôÀë
1.×ÊÔ´¸ôÀëµÄ¿¼ÂÇ£º·Ö³¡¾°¡¢°´ÒµÎñ
¸ß·åÆÚ²»Í¬£¬ÔËάʱ¼ä²»Í¬£»
¿É¿¿ÐÔ¡¢ÑÓ³ÙÐèÇó²»Í¬£»
Ó¦Óó¡¾°£¬ÖØÒªÐÔ²»Í¬£»
2.×ÊÔ´¸ôÀëµÄ²ßÂÔ£º
YARN´ò±êÇ©£¬½ÚµãÎïÀí¸ôÀ룻
ÀëÏßDataNodeÓëʵʱ¼ÆËã½ÚµãµÄ¸ôÀ룻

Îȶ¨ÐÔʵ¼ù-ÖÇÄܵ÷¶È

ÖÇÄܵ÷¶ÈÄ¿µÄÒ²ÊÇΪÁ˽â¾ö×ÊÔ´²»¾ùµÄÎÊÌ⣬ÏÖÔÚÆÕͨµÄµ÷¶È²ßÂÔ¾ÍÊÇ»ùÓÚCPU£¬»ùÓÚÄÚ´æÈ¥µ÷¶ÈµÄ¡£³ý´ËÖ®Í⣬ÔÚÉú²ú¹ý³ÌÖÐÒ²·¢ÏÖÁËһЩÆäËûµÄÎÊÌ⣬±ÈÈç˵FlinkÊÇ»áÒÀÀµ±¾µØ´ÅÅÌ£¬½øÐÐÒÀÀµ±¾µØ´ÅÅÌ×ö±¾µØµÄ״̬µÄ´æ´¢£¬ËùÒÔ´ÅÅÌIO£¬»¹ÓдÅÅ̵ÄÈÝÁ¿£¬Ò²ÊÇÒ»À࿼ÂǵÄÎÊÌâµã£¬³ý´ËÖ®Í⻹°üÀ¨Íø¿¨Á÷Á¿£¬ÒòΪÿ¸öÒµÎñµÄÁ÷Á¿µÄ״̬ÊDz»Ò»ÑùµÄ£¬·ÖÅä½øÀ´»áµ¼ÖÂÁ÷Á¿µÄ¸ß·å£¬°Ñijһ¸öÍø¿¨´òÂú£¬´Ó¶øÓ°ÏìÆäËûÒµÎñ£¬ËùÒÔÆÚÍûµÄ»°ÊÇ˵×öһЩÖÇÄܵ÷¶È»¯µÄÊÂÇ顣ĿǰÔÝʱÄÜ×öµ½µÄÊÇ´ÓcpuºÍÄÚ´æÁ½·½Ã棬δÀ´»á´ÓÆäËû·½Ãæ×öһЩ¸üÓŵĵ÷¶È²ßÂÔ¡£
Îȶ¨ÐÔʵ¼ù-¹ÊÕÏÈÝ´í
1.½Úµã/ÍøÂç¹ÊÕÏ
JobManagerHA
×Ô¶¯ÀÆð
ÓëStorm²»Í¬µÄÊÇ£¬ÖªµÀStormÔÚÓöµ½Òì³£µÄʱºòÊǷdz£¼òµ¥´Ö±©µÄ£¬±ÈÈç˵Óз¢ÉúÁËÒì³££¬¿ÉÄÜÓû§Ã»ÓÐÔÚ´úÂëÖнøÐбȽϹ淶µÄÒì³£´¦Àí£¬µ«ÊÇûÓйØÏµ£¬ÒòΪworker»áÖØÆô×÷Òµ»¹»á¼ÌÐøÖ´ÐУ¬²¢ÇÒËû±£Ö¤µÄÊÇAt-Least-OnceÕâÑùµÄÓïÒ壬±ÈÈç˵һ¸öÍøÂ糬ʱµÄÒì³£¶ÔËû¶øÑÔÓ°Ïì¿ÉÄܲ¢Ã»ÓÐÄÇô´ó£¬µ«ÊÇFlink²»Í¬µÄÊÇËû¶ÔÒì³£µÄÈÝÈ̶ÈÊǷdz£µÄ¿Á¿ÌµÄ£¬ÄÇʱºò¾Í¿¼ÂǵÄÊDZÈÈç˵»á·¢Éú½Úµã»òÕßÊÇÍøÂçµÄ¹ÊÕÏ£¬ÄÇJobManagerµ¥µãÎÊÌâ¿ÉÄܾÍÊÇÒ»¸öÆ¿¾±£¬JobManagerÄǸöÈç¹û¹ÒµôµÄ»°£¬ÄÇô¿ÉÄܶÔÕû¸ö×÷ÒµµÄÓ°Ïì¾ÍÊDz»¿É»Ø¸´µÄ£¬ËùÒÔ¿¼ÂÇÁË×öHA£¬ÁíÍâÒ»¸ö¾ÍÊÇ»áÈ¥¿¼ÂÇһЩÓÉÓÚÔËάµÄÒòËØ¶øµ¼ÖµÄÄÇ×÷Òµ£¬»¹Óгý´ËÖ®Í⣬¿ÉÄÜÓÐһЩÓû§×÷ÒµÊÇûÓпªÆôCheckPoint£¬µ«Èç¹ûÊÇÒòΪ½Úµã»òÕßÊÇÍøÂç¹ÊÕϵ¼Ö¹ҵô£¬Ï£Íû»áÔÚÆ½Ì¨ÄÚ²ã×öһЩ×Ô¶¯ÀÆðµÄ²ßÂÔ£¬È¥±£Ö¤×÷ÒµÔËÐеÄÎȶ¨ÐÔ¡£
2.ÉÏÏÂÓÎÈÝ´í
FlinkKafka08Òì³£ÖØÊÔ
ÎÒÃǵÄÊý¾ÝÔ´Ö÷ÒªÊÇKafka£¬¶ÁдKafkaÊÇÒ»Àà·Ç³£³£¼ûµÄʵʱÁ÷´¦Àí±Ü²»¿ªµÄÒ»¸öÄÚÈÝ£¬¶øKafka±¾ÉíµÄ¼¯Èº¹æÄ£ÊǷdz£±È½Ï´óµÄ£¬Òò´Ë½ÚµãµÄ¹ÊÕϳöÏÖÊÇÒ»¸ö³£Ì¬ÎÊÌ⣬ÔÚ´Ë»ù´¡ÉÏÎÒÃǶԽڵã¹ÊÕϽøÐÐÁËһЩÈÝ´í£¬±ÈÈç˵½Úµã¹Òµô»òÕßÊÇÊý¾Ý¾ùºâµÄʱºò£¬Leader»áÇл»£¬ÄDZ¾ÉíFlinkµÄ¶Áд¶ÔLeaderµÄÇл»ÈÝÈ̶ÈûÓÐÄÇô¸ß£¬ÔÚ´Ë»ù´¡ÉÏÎÒÃǶÔÒ»Ð©ÌØ¶¨³¡¾°µÄ£¬ÒÔ¼°Ò»Ð©ÌØÓеÄÒì³£×öµÄһЩÓÅ»¯£¬½øÐÐÁËÒ»Ð©ÖØÊÔ¡£
3.ÈÝÔÖ
¶à»ú·¿
Á÷Èȱ¸
ÈÝÔÖ¿ÉÄÜ´ó¼Ò¶Ô¿¼ÂǵIJ¢²»¶à£¬±ÈÈç˵ÓÐûÓпÉÄÜÒ»¸ö»ú·¿µÄËùÓеĽڵ㶼¹ÒµôÁË£¬»òÕßÊÇÎÞ·¨·ÃÎÊÁË£¬ËäÈ»ËüÊÇÒ»¸öС¸ÅÂʵÄʼþ£¬µ«ËüÒ²ÊǻᷢÉúµÄ¡£ËùÒÔÏÖÔÚÒ²»á¿¼ÂÇ×ö¶à»ú·¿µÄһЩ²¿Ê𣬰üÀ¨»¹ÓÐKafkaµÄһЩÈȱ¸¡£
Flinkƽ̨»¯
Flinkƽ̨»¯-×÷Òµ¹ÜÀí
ÔÚʵ¼ù¹ý³ÌÖУ¬ÎªÁ˽â¾ö×÷Òµ¹ÜÀíµÄһЩÎÊÌ⣬¼õÉÙÓû§¿ª·¢µÄһЩ³É±¾£¬ÎÒÃÇ×öÁËһЩƽ̨»¯µÄ¹¤×÷£¬ÏÂͼÊÇÒ»¸ö×÷ÒµÌá½»µÄ½çÃæÕ¹Ê¾£¬°üÀ¨×÷ÒµµÄÅäÖã¬×÷ÒµÉúÃüÖÜÆÚµÄ¹ÜÀí£¬±¨¾¯µÄһЩÅäÖã¬ÑÓ³ÙµÄչʾ£¬¶¼ÊǼ¯³ÉÔÚʵʱ¼ÆËãÆ½Ì¨µÄ¡£

Flinkƽ̨»¯-¼à¿Ø±¨¾¯
ÔÚ¼à¿ØÉÏÎÒÃÇÒ²×öÁËһЩÊÂÇ飬¶ÔÓÚʵʱ×÷ÒµÀ´½²£¬¶Ô¼à¿ØµÄÒªÇó»á¸ü¸ß£¬±ÈÈç˵ÔÚ×÷ÒµÑÓ³ÙµÄʱºò¶ÔÒµÎñµÄÓ°ÏìÒ²±È½Ï´ó£¬ËùÒÔ×öÁËһЩÑӳٵı¨¾¯£¬°üÀ¨×÷ҵ״̬µÄ±¨¾¯£¬±ÈÈç˵×÷Òµ´æ»îµÄ״̬£¬ÒÔ¼°×÷ÒµÔËÐеÄ״̬£¬»¹ÓÐδÀ´»á×öһЩ×Ô¶¨ÒåMetricsµÄ±¨¾¯¡£×Ô¶¨ÒåMetricsÊÇδÀ´»á¿¼ÂÇ»ùÓÚ×÷Òµ´¦Àí±¾ÉíµÄÄÚÈÝÐÔ£¬×öһЩ¿ÉÅäÖû¯µÄһЩ±¨¾¯¡£
Flinkƽ̨»¯-µ÷ÓÅÕï¶Ï
1.ʵʱ¼ÆËãÒýÇæÌṩͳһÈÕÖ¾ºÍMetrics·½°¸
2.ΪҵÎñÌṩ°´Ìõ¼þ¹ýÂ˵ÄÈÕÖ¾¼ìË÷
3.ΪҵÎñÌṩ×Ô¶¨Òåʱ¼ä¿ç¶ÈµÄÖ¸±ê²éѯ
4.»ùÓÚÈÕÖ¾ºÍÖ¸±ê£¬ÎªÒµÎñÌṩ¿ÉÅäÖõı¨¾¯
ÁíÍâ¾ÍÊǸոÕÌᵽ˵ÔÚ¿ª·¢ÊµÊ±×÷ÒµµÄʱºò£¬µ÷ÓźÍÕï¶ÏÊÇÒ»¸ö±È½ÏÄѵÄÍ´µã£¬¾ÍÊÇÓû§²»ÊǺÜÄÑÈ¥²é¿´·Ö²¼Ê½µÄÈÕÖ¾£¬ËùÒÔÒ²ÌṩÁËÒ»Ì×ͳһµÄ½â¾ö·½°¸¡£ÕâÌ×½â¾ö·½°¸Ö÷ÒªÊÇÕë¶ÔÈÕÖ¾ºÍMetrics£¬»áÔÚÕë¶ÔÒýÇæÄÇÒ»²ã×öһЩÈÕÖ¾ºÍMetricsµÄÉϱ¨£¬ÄÇôËü»áͨ¹ýͳһµÄÈÕÖ¾ÊÕ¼¯ÏµÍ³£¬½«ÕâЩÔʼµÄÈÕÖ¾£¬»¹ÓÐMetrics»ã¼¯µ½KafkaÄÇÒ»²ã¡£½ñºóKafkaÕâÒ»²ã´ó¼Ò¿ÉÒÔ·¢ÏÖËüÓÐÁ½¸öÏÂÓΣ¬Ò»·½ÃæÊÇ×öÈÕÖ¾µ½ESµÄÊý¾Ýͬ²½£¬Ä¿µÄµÄ»°ÊÇ˵Äܹ»½øÈëÈÕÖ¾ÖÐÐÄÈ¥×öһЩÈÕÖ¾µÄ¼ìË÷£¬ÁíÍâÒ»·½ÃæÊÇͨ¹ýһЩ¾ÛºÏ´¦ÀíÁ÷תµ½Ð´Èëµ½OpenTSDB°ÑÊý¾Ý×öÒÀÀµ£¬Õâ·Ý¾ÛºÏºóµÄÊý¾Ý»á×öһЩ²éѯ£¬Ò»·½ÃæÊÇMetricsµÄ²éѯչʾ£¬ÁíÍâÒ»·½Ãæ¾ÍÊǰüÀ¨Êµ×öµÄһЩÏà¹ØµÄ±¨¾¯¡£

ÏÂͼÊǵ±Ç°Ä³Ò»¸ö×÷ÒµµÄÒ»¸ö¿ÉÖ§³Ö¿çÌìά¶ÈµÄMetricsµÄÒ»¸ö²éѯµÄÒ³Ãæ¡£¿ÉÒÔ¿´µ½ËµÈç¹ûÊÇÄܹ»Í¨¹ý×ÝÏòµÄ¶Ô±È£¬¿ÉÒÔ·¢ÏÖ³ýÁË×÷ÒµÔÚijһ¸öʱ¼äµãÊÇÒòΪʲôÇé¿öµ¼Öµģ¿±ÈÈç˵ÑÓ³Ù°¡ÕâÑùÈÝÒ×°ïÓû§ÅжÏһЩËûµÄ×ö×÷ÒµµÄһЩÎÊÌâ¡£³ýÁË×÷ÒµµÄÔËÐÐ״̬֮Í⣬Ҳ»áÏȾÍÊDzɼ¯Ò»Ð©½ÚµãµÄ»ù±¾ÐÅÏ¢×÷ΪºáÏòµÄ¶Ô±È¡£

ÏÂͼÊǵ±Ç°µÄÈÕÖ¾µÄһЩ²éѯ£¬Ëü¼Ç¼ÁË£¬ÒòΪ×÷ÒµÔÚ¹ÒµôÖ®ºó£¬Ã¿Ò»¸öApplicationID¿ÉÄÜ»á±ä»¯£¬ÄÇô»ùÓÚ×÷ҵΨһµÄΨһµÄÖ÷¼ü×÷ÒµÃûÈ¥ËѼ¯ÁËËùÓеÄ×÷Òµ£¬´Ó´´½¨Ö®³õµ½µ±Ç°ÔËÐеÄÈÕÖ¾£¬ÄÇô¿ÉÒÔÔÊÐíÓû§µÄ¿çApplicationµÄÈÕÖ¾²éѯ¡£

Éú̬½¨Éè
ΪÁËÊÊÅäÕâÁ½ÀàMQ×öÁ˲»Í¬µÄÊÂÇ飬¶ÔÓÚÏßÉϵÄMQ£¬ÆÚÍûÈ¥×öÒ»´Îͬ²½¶à´ÎÏû·Ñ£¬Ä¿µÄÊDZÜÃâ¶ÔÏßÉϵÄÒµÎñÔì³ÉÓ°Ï죬¶ÔÓÚµÄÉú²úÀàµÄKafka¾ÍÊÇÏßϵÄKafka£¬×öÁËһЩµØÖ·µÄµØÖ·µÄÆÁ±Î£¬»¹Óлù´¡»ù´¡µÄһЩÅäÖ㬰üÀ¨Ò»Ð©È¨Ï޵ĹÜÀí£¬»¹ÓÐÖ¸±êµÄ²É¼¯¡£
FlinkÔÚÃÀÍŵÄÓ¦ÓÃ
ÏÂÃæ»á¸ø´ó¼Ò½²Á½¸öFlinkÔÚÃÀÍŵÄÕæÊµÊ¹ÓõݸÀý¡£µÚÒ»¸öÊÇPetra£¬PetraÆäʵÊÇÒ»¸öʵʱָ±êµÄÒ»¸ö¾ÛºÏµÄϵͳ£¬ËüÆäʵÊÇÃæÏò¹«Ë¾µÄÒ»¸öͳһ»¯µÄ½â¾ö·½°¸¡£ËüÖ÷ÒªÃæÏòµÄÒµÎñ³¡¾°¾ÍÊÇ»ùÓÚÒµÎñµÄʱ¼äȥͳ¼Æ£¬»¹ÓмÆËãһЩʵʱµÄÖ¸±ê£¬ÒªÇóµÄ»°ÊǵÍʱÑÓ£¬Ëû»¹ÓÐÒ»¸ö¾ÍÊÇ˵£¬ÒòΪËüÊÇÃæÏòµÄÊÇͨÓõÄÒµÎñ£¬ÓÉÓÚÒµÎñ¿ÉÄÜÊǸ÷×Ô»áÓи÷×Ô²»Í¬µÄά¶È£¬Ã¿Ò»¸öÒµÎñ¿ÉÄܰüº¬Á˰üÀ¨Ó¦ÓÃͨµÀ»ú·¿£¬»¹ÓÐÆäËûµÄ¸÷×ÔÓ¦Óø÷¸öÒµÎñÌØÓеÄһЩά¶È£¬¶øÇÒÕâЩά¶È¿ÉÄÜÉæ¼°µ½±È½Ï¶à£¬ÁíÍâÒ»¸ö¾ÍÊÇ˵Ëü¿ÉÄÜÊǾÍÊÇÒµÎñÐèҪȥ×öһЩ¸´ºÏµÄÖ¸±êµÄ¼ÆË㣬±ÈÈç˵×î³£¼ûµÄ½»Ò׳ɹ¦ÂÊ£¬Ëû¿ÉÄÜÐèҪȥ¼ÆËãÖ§¸¶µÄ³É¹¦Êý£¬»¹ÓкÍϵ¥ÊýµÄ±ÈÀý¡£
ÁíÍâÒ»¸ö¾ÍÊÇ˵ͳһ»¯µÄÖ¸±ê¾ÛºÏ¿ÉÄÜÃæÏòµÄ»¹ÊÇÒ»¸öϵͳ£¬±ÈÈç˵ÊÇһЩB¶Ë»òÕßÊÇR¶ÎµÄһЩ¼à¿ØÀàµÄϵͳ£¬ÄÇôϵͳ¶ÔÓÚÖ¸±êϵͳµÄËßÇ󣬾ÍÊÇ˵ÎÒÏ£ÍûÖ¸±ê¾ÛºÏÄܹ»×îÕæ×îʵʱ×ȷµÄÄܹ»²úÉúһЩ½á¹û£¬Êý¾Ý±£Ö¤ËµËüµÄÏÂÓÎϵͳÄܹ»ÕæÊµµÄ¼à¿Øµ½µ±Ç°µÄÐÅÏ¢¡£ÓÒ±ßͼÊÇÎÒµ±Ò»¸öMetricsչʾµÄÒ»¸öÊÂÀý¡£¿ÉÒÔ¿´µ½ÆäËûÆäʵ¸ú¸Õ¸Õ½²Ò²ÊDZȽÏÀàËÆµÄ£¬¾ÍÊÇ˵°üº¬ÁËÒµÎñµÄ²»Í¬Î¬¶ÈµÄһЩָ±ê»ã¾ÛµÄ½á¹û¡£
Petraʵʱָ±ê¾ÛºÏ
1.ÒµÎñ³¡¾°£º
»ùÓÚÒµÎñʱ¼ä£¨Ê¼þʱ¼ä£©
¶àÒµÎñά¶È£ºÈçÓ¦Óá¢Í¨µÀ¡¢»ú·¿
¸´ºÏÖ¸±ê¼ÆË㣺Èç½»Ò׳ɹ¦ÂÊ=Ö§¸¶³É¹¦Êý/ϵ¥Êý
µÍÑÓ³Ù£ºÃë¼¶½á¹ûÊä³ö

2.ExactlyonceµÄ¾«È·ÐÔ±£ÕÏ
Flinkcheckpoint»úÖÆ
3.ά¶È¼ÆËãÖÐÊý¾ÝÇãб
ÈȵãkeyÉ¢ÁÐ
4.¶ÔÍíµ½Êý¾ÝµÄÈÝÈÌÄÜÁ¦
´°¿ÚµÄÉèÖÃÓë×ÊÔ´µÄȨºâ

ÔÚÓÃFlinkÈ¥×öʵʱָ±ê¸´ºËµÄϵͳµÄʱºò£¬×ÅÖØ´ÓÕ⼸·½ÃæÈ¥¿¼ÂÇÁË¡£µÚÒ»¸ö·½ÃæÊÇ˵¾«È·µÄ¼ÆË㣬°üÀ¨Ê¹ÓÃÁËFLinkºÍCheckPointµÄ»úÖÆÈ¥±£Ö¤ËµÎÒÄÜ×öµ½²»¶ª²»ÖصļÆË㣬µÚÒ»¸öÊ×ÏÈÊÇÓÉͳһ»¯µÄMetricsÁ÷Èëµ½Ò»¸öÔ¤¾ÛºÏµÄÄ£¿é£¬Ô¤¾ÛºÏµÄÄ£¿éÖ÷Ҫȥ×öһЩ³õʼ»¯µÄһЩ¾ÛºÏ£¬ÆäÖеÄΪʲô»á·ÖÔ¤¾ÛºÏºÍÈ«Á¿¾ÛºÏÖ÷ÒªµÄ½â¾öÒ»ÀàÎÊÌ⣬°üÀ¨¾Í¸Õ¸ÕÄÇλͬѧÎʵÄÒ»¸öÎÊÌ⣬¾ÍÊÇÊý¾ÝÇãбµÄÎÊÌ⣬±ÈÈç˵ÔÚÈȵãK·¢ÉúµÄʱºò£¬µ±Ç°µÄ½â¾ö·½°¸Ò²ÊÇͨ¹ýÔ¤¾ÛºÏµÄ·½Ê½È¥×öһЩ»º³å£¬Èþ¡Á¿°ÑKÈ¥´òÉ¢£¬ÔÙ¾ÛºÏÈ«Á¿¾ÛºÏÄ£¿éÈ¥×ö»ã¾Û¡£ÄÇÆäʵҲÊÇÖ»Äܽâ¾öÒ»²¿·ÖÎÊÌ⣬ËùÒÔºóÃæÒ²¿¼ÂÇ˵ÔÚÐÔÄܵÄÓÅ»¯ÉϰüÀ¨È¥Ì½Ë÷״̬´æ´¢µÄÐÔÄÜ¡£ÏÂÃæµÄ»°»¹Êǰüº¬Ííµ½Êý¾ÝµÄÈÝÈÌÄÜÁ¦£¬ÒòΪָ±ê»ã¾Û¿ÉÄܸոÕÒ²Ìᵽ˵Ҫ°üº¬Ò»Ð©¸´ºÏµÄÖ¸±ê£¬ÄÇô·ûºÏµÄÖ¸±êËùÒÀÀµµÄÊý¾Ý¿ÉÄÜÀ´×ÔÓÚ²»Í¬µÄÁ÷£¬¼´±ãÀ´×ÔÓÚͬһ¸öÁ÷£¬¿ÉÄÜÿһ¸öÊý¾ÝÉϱ¨µÄʱºò£¬¿ÉÄÜÒ²»áÓÐÍíµ½µÄÇé¿ö·¢Éú£¬ÄÇʱºòÐèҪȥ¶ÔÊý¾Ý¹ØÁª×öÍíµ½µÄÈÝÈÌ£¬ÈÝÈ̵ÄÒ»·½ÃæÊÇ˵¿ÉÒÔÉèÖÃÍíµ½µÄLatenessµÄÑÓ³Ù£¬ÁíÒ»·½ÃæÊÇ¿ÉÒÔÉèÖô°¿ÚµÄ³¤¶È£¬µ«ÊÇÆäʵÔÚÏÖʵµÄÓ¦Óó¡¾°ÉÏ£¬Æäʵ»¹ÓÐÒ»·½Ã濼ÂǾÍÊÇ˵³ýÁËÈ¥¾¡Á¿µÄÈ¥À³¤Ê±¼ä£¬»¹Òª¿¼ÂÇÕæÕýµÄ¼ÆËã³É±¾£¬ËùÒÔÔÚÕâ·½ÃæÒ²×öÁËһЩȨºâ£¬ÄÇôָ±ê»ù±¾¾ÍÊǾ¹ýÈ«Á¿¾ÛºÏÖ®ºó£¬¾ÛºÏ½á¹û»á»ØÐ´Kafka£¬¾¹ýÊý¾Ýͬ²½µÄÄ£¿éдµ½OpenTSDBÈ¥×ö£¬×îºóÈ¥grafanaÄÇ×öÖ¸±êµÄչʾ£¬ÁíÒ»·½Ãæ¿ÉÄÜÈ¥Ó¦Óõ½Í¨¹ýFacebook°üͬ²½µÄÄ£¿éȥͬ²½µ½±¨¾¯µÄϵͳÀïÃæÈ¥×öһЩָ±ê£¬»ùÓÚÖ¸±êµÄ±¨¾¯¡£
ÏÂͼÊÇÏÖÔÚÌṩµÄ²úÆ·»¯µÄPetraµÄÒ»¸öչʾµÄ»úʾÒâͼ£¬¿ÉÒÔ¿´µ½Ä¿Ç°µÄ»°¾ÍÊǶ¨ÒåÁËijһЩ³£ÓõÄËã×Ó£¬ÒÔ¼°Î¬¶ÈµÄÅäÖã¬ÔÊÐíÓû§½øÐÐÅäÖû°µÄ´¦Àí£¬Ö±½ÓÈ¥Äܹ»»ñÈ¡µ½ËûÆÚÍûÒªµÄÖ¸±êµÄÒ»¸öչʾºÍ»ã¾ÛµÄ½á¹û¡£Ä¿Ç°»¹ÔÚ̽Ë÷˵ΪPetra»ùÓÚSql×öһЩÊÂÇ飬ÒòΪºÜ¶àÓû§Ò²±È½Ï¾ÍÊÇÔÚ¾ÍÊÇϰ¹ßÉÏÒ²¿ÉÒÔÇãÏòÓÚ˵ÎÒҪȥдSqlÈ¥Íê³ÉÕâÑùµÄͳ¼Æ£¬ËùÒÔÒ²»á»ùÓÚ´Ë˵ÒÀÀµFlinkµÄ±¾ÉíµÄ¶ÔSQl»¹ÓÐTableAPIµÄÖ§³Ö£¬Ò²»áÔÚSqlµÄ³¡¾°ÉϽøÐÐһЩ̽Ë÷¡£

MLX»úÆ÷ѧϰƽ̨
µÚ¶þÀàÓ¦ÓþÍÊÇ»úÆ÷ѧϰµÄÒ»¸ö³¡¾°£¬»úÆ÷ѧϰµÄ³¡¾°¿ÉÄÜ»áÒÀÀµÀëÏßµÄÌØÕ÷Êý¾ÝÒÔ¼°ÊµÊ±µÄÌØÕ÷Êý¾Ý¡£Ò»¸öÊÇ»ùÓÚÏÖÓеÄÀëÏß³¡¾°ÏµÄÌØÕ÷ÌáÈ¡£¬¾¹ýÁËÅú´¦Àí£¬Á÷תµ½ÁËÀëÏߵļ¯Èº¡£ÁíÍâÒ»¸ö¾ÍÊǽüÏßģʽ£¬½üÏßģʽ³öµÄÊý¾Ý¾ÍÊÇÏÖÓеĴÓÈÕÖ¾ÊÕ¼¯ÏµÍ³Á÷ת¹ýÀ´µÄͳһµÄÈÕÖ¾£¬¾¹ýFlinkµÄ´¦Àí£¬¾ÍÊǰüÀ¨Á÷µÄ¹ØÁªÒÔ¼°ÌØÕ÷µÄÌáÈ¡£¬ÔÙ×öÄ£Ð͵ÄѵÁ·£¬Á÷תµ½×îÖÕµÄѵÁ·µÄ¼¯Èº£¬ÑµÁ·µÄ¼¯Èº»á²ú³öPµÄÌØÕ÷£¬»¹Óж¼ÊÇDeltaµÄÌØÕ÷£¬×îÖÕ½«ÕâÐ©ÌØÕ÷Ó°Ïìµ½ÏßÉϵÄÏßÉϵÄÌØÕ÷µÄÒ»¸öѵÁ·µÄÒ»¸ö·þÎñÉÏ¡£ÕâÊÇÒ»¸ö±È½Ï³£¼ûµÄ£¬±ÈÈç˵±È½Ï¾ÍÊÇͨÓõÄÒ²ÊDZȽÏͨÓõÄÒ»¸ö³¡¾°£¬Ä¿Ç°µÄ»°Ö÷ÒªÓ¦Óõķ½¿ÉÄܰüº¬ÁËËÑË÷»¹ÓÐÍÆ¼ö£¬ÒÔ¼°Ò»Ð©ÆäËûµÄÒµÎñ¡£

δÀ´Õ¹Íû
δÀ´µÄ»°¿ÉÄÜÒ²ÊÇͨ¹ýÒ²ÊÇÆÚÍûÔÚÕâÈý·½Ãæ½øÐÐ×öһЩ¸ü¶àµÄÊÂÇ飬¸Õ¸ÕÒ²Ìáµ½Á˰üÀ¨×´Ì¬µÄ¹ÜÀí£¬µÚÒ»¸öÊÇ״̬µÄͳһµÄ£¬±ÈÈç˵Sql»¯µÄͳһµÄ¹ÜÀí£¬Ï£ÍûÓÐͳһµÄÅäÖ㬰ïÓû§È¥Ñ¡ÔñһЩÆÚÍûµÄ»Ø¹öµã¡£ÁíÍâÒ»¸ö¾ÍÊÇ´ó״̬µÄÐÔÄÜÓÅ»¯£¬ÒòΪ±ÈÈç˵Ïñ×öһЩÁ÷Á¿Êý¾ÝµÄË«Á÷µÄ¹ØÁªµÄʱºò£¬ÏÖÔÚÒ²Óöµ½ÁËһЩÐÔÄÜÆ¿¾±µÄÎÊÌ⣬¶ÔÓÚ˵°¡»ùÓÚÄÚ´æÐ͵Ä״̬£¬»ùÓÚÄÚ´æÐ͵ÄÊý¾ÝµÄ´¦Àí£¬ÒÔ¼°»ùÓÚRocksDBµÄ״̬µÄ´¦Àí£¬×ö¹ýÐÔÄܵıȽϣ¬·¢ÏÖÆäʵÐÔÄܵIJîÒ컹ÊÇÓÐһЩ´óµÄ£¬ËùÒÔÏ£Íû˵ÔÚ»ùÓÚRocksDBBackendµÄÉÏÃæÄܹ»È¥¾¡Á¿È¥¸ü¶àµÄ×öһЩÓÅ»¯£¬´Ó¶øÌáÉý×÷Òµ´¦ÀíµÄÐÔÄÜ¡£µÚ¶þ·½Ãæ¾ÍÊÇSql£¬SqlµÄ»°Ó¦¸ÃÊÇÿһ¸öλ¾ÍÊǵ±Ç°¿ÉÄܸ÷¸ö¹«Ë¾¶¼ÔÚ×öµÄÒ»¸ö·½Ïò£¬ÒòΪ֮ǰҲÓжÔSql×öһЩ̽Ë÷£¬°üÀ¨ÌṩÁË»ùÓÚStormµÄһЩSqlµÄ±íʾ£¬µ«ÊÇ¿ÉÄܶÔÓÚ֮ǰµÄ»°¶ÔÓÚÓëÓïÒåµÄ±í´ï¿ÉÄÜ»áÓÐһЩǷȱ£¬ËùÒÔÏ£Íû˵ÔÚ»ùÓÚFlink¿ÉÈ¥½â¾öÕâЩ·½ÃæµÄÊÂÇ飬ÒÔ¼°°üÀ¨SqlµÄ²¢·¢¶ÈµÄһЩÅäÖõÄÓÅ»¯£¬°üÀ¨SqlµÄ²éѯµÄһЩÓÅ»¯£¬¶¼Ï£Íû˵ÔÚFlinkδÀ´Äܹ»È¥ÓÅ»¯¸ü¶àµÄ¶«Î÷£¬È¥ÕæÕýÄÜʹSqlÓ¦Óõ½Éú²úµÄ»·¾³¡£
ÁíÍâÒ»·½ÃæµÄ»°¾ÍÊÇ»á½øÐÐеij¡¾°µÄÒ²ÔÚ×öеij¡¾°µÄһЩ̽Ë÷£¬ÆÚÍûÊDZÈÈç˵°üÀ¨¸Õ¸ÕÒ²Ìᵽ˵³ýÁËÁ÷ʽµÄ´¦Àí£¬Ò²ÆÚÍû˵°ÑÀëÏߵij¡¾°ÏµÄÊý¾Ý½øÐÐһЩºÏ²¢£¬Í¨¹ýͳһµÄSqlµÄAPIÈ¥Ìṩ¸øÒµÎñ×ö¸ü¶àµÄ·þÎñ£¬°üÀ¨Á÷´¦Àí£¬»¹ÓÐÅú´¦ÀíµÄ½áºÏ¡£
|