±à¼ÍƼö: |
À´Ô´csdn
£¬ÎÄÕÂÖ÷Ҫ΢ÈíASG´óÊý¾ÝÍŶÓÈçºÎÀûÓÃKafka¡¢SparkÒÔ¼°ElasticsearchÀ´½â¾öʵʱ´óÊý¾ÝÖÊÁ¿¼à¿ØÆ½Ì¨µÄ¸ßÀ©Õ¹ÐÔ£¬Êý¾ÝÍêÕûÐÔµÈÎÄÕ¡£ |
|
΢ÈíµÄASG (Ó¦ÓÃÓë·þÎñ¼¯ÍÅ)°üº¬Bing,¡¢Office,¡¢Skype¡£Ã¿Ìì²úÉú¶à´ï5
PBÒÔÉÏÊý¾Ý£¬ÈçºÎ¹¹½¨Ò»¸ö¸ßÀ©Õ¹ÐÔµÄdata audit·þÎñÀ´±£Ö¤ÕâÑùÁ¿¼¶µÄÊý¾ÝÍêÕûÐÔºÍʵʱÐԷdz£¾ßÓÐÌôÕ½ÐÔ¡£±¾ÎĽ«½éÉÜ΢ÈíASG´óÊý¾ÝÍŶÓÈçºÎÀûÓÃKafka¡¢SparkÒÔ¼°ElasticsearchÀ´½â¾öÕâ¸öÎÊÌâ¡£
΢ÈíµÄASG (Ó¦ÓÃÓë·þÎñ¼¯ÍÅ)°üº¬Bing,¡¢Office,¡¢Skype¡£Ã¿Ìì²úÉú¶à´ï5
PBÒÔÉÏÊý¾Ý£¬ÈçºÎ¹¹½¨Ò»¸ö¸ßÀ©Õ¹ÐÔµÄdata audit·þÎñÀ´±£Ö¤ÕâÑùÁ¿¼¶µÄÊý¾ÝÍêÕûÐÔºÍʵʱÐԷdz£¾ßÓÐÌôÕ½ÐÔ¡£±¾ÎĽ«½éÉÜ΢ÈíASG´óÊý¾ÝÍŶÓÈçºÎÀûÓÃKafka¡¢SparkÒÔ¼°ElasticsearchÀ´½â¾öÕâ¸öÎÊÌâ¡£

°¸Àý¼ò½é
±¾°¸Àý½éÉÜÁË΢Èí´óÊý¾Ýƽ̨ÍŶÓÉè¼ÆºÍ²¿ÊðµÄ»ùÓÚ¿ªÔ´¼¼Êõ(Kafka¡¢Spark¡¢ElasticsSearch¡¢Kibana)µÄ´óÊý¾ÝÖÊÁ¿¼à¿ØÆ½Ì¨£¬Õâ¸öƽ̨¾ßÓÐʵʱ¡¢¸ß¿ÉÓᢿÉÀ©Õ¹¡¢¸ß¶È¿ÉÐŵÄÌØÐÔ£¬³ÉΪ΢ÈíBing¡¢Office365¡¢SkypeµÈÄêÊÕÈë270+ÒÚÃÀÔªµÄÒµÎñÔÚ¼à¿ØÊý¾ÝÖÊÁ¿·½ÃæµÄ¿É¿¿¼¼Êõ±£ÕÏ¡£
ͬʱ£¬»ùÓÚÒµÎñÐèÒª£¬ÎÒÃÇÔÚÉè¼ÆºÍʵÏÖÖдï³ÉÏÂÃæÒ»ÏµÁеÄÄ¿±ê£º
¼à¿ØÁ÷ʽÊý¾ÝµÄÍêÕûÐÔÓëʱÑÓ;
ÐèÒª¼à¿ØµÄÊý¾Ý¹ÜµÀ(pipeline)¾ßÓжà¸öÊý¾ÝÉú²úÕß¡¢¶à´¦Àí½×¶Î¡¢¶àÊý¾ÝÏû·ÑÕßµÄÌØÐÔ;
Êý¾ÝÖÊÁ¿µÄ¼à¿ØÐèÒª½üʵʱ(near real time);
Êý¾ÝÖÊÁ¿·¢ÉúÎÊÌâµÄʱºò£¬ÐèÒªÌṩÏàÓ¦µÄÕï¶ÏÐÅÏ¢À´°ïÖú¹¤³ÌʦѸËÙ½â¾öÎÊÌâ;
¼à¿ØÆ½Ì¨µÄ·þÎñ±¾ÉíÐèÒª³¬¼¶Îȶ¨ºÍ¸ß¿ÉÓÃ, ´óÓÚ99.9%ÔÚÏßʱ¼ä;
¼à¿ØÓëÉ󼯱¾ÉíÊǸ߶ȿÉÐÅ;
ƽ̨¼Ü¹¹¿ÉÒÔˮƽÀ©Õ¹ (Scale out)¡£
±³¾°¼°ÎÊÌâÒýÈë
ΪÁË·þÎñ΢ÈíµÄBing¡¢Office 365ÒÔ¼°SkypeÒµÎñ£¬ÎÒÃǵĴóÊý¾Ýƽ̨ÐèÒª´¦ÀíÿÌì¸ß´ïÊ®¼¸PB¼¶±ðµÄº£Á¿´óÊý¾Ý£¬ËùÓеÄÊý¾Ý·ÖÎö¡¢±¨±í¡¢¶´¼ûÒÔ¼°A/B²âÊÔ¶¼ÒÀÀµÓÚ¸ßÖÊÁ¿µÄÊý¾Ý£¬Èç¹ûÊý¾ÝÖÊÁ¿²»¸ßµÄ»°£¬ÒÀÀµÊý¾Ý×ö¾ö²ßµÄÒµÎñ¶¼»áÊܵ½ÑÏÖØÓ°Ïì¡£
Óë´Ëͬʱ£¬Î¢ÈíÒµÎñ¶ÔÓÚʵʱÊý¾Ý´¦ÀíµÄÐèÇóÒ²ÈÕÒæÔö¼Ó£¬ÒÔǰ¼à¿ØÅú´¦ÀíÊý¾Ý(batch data)µÄºÜ¶à½â¾ö·½°¸ÒѾ²»ÔÙÊÊÓÃÓÚʵʱµÄÁ÷ʽÊý¾ÝµÄÖÊÁ¿¼à¿Ø¡£
ÔÚÁíÍâÒ»¸ö²ãÃæ£¬»ùÓÚÀúÊ·ÔÒò£¬¸÷¸öÒµÎñ¼¯ÍÅÍùÍùʹÓò»Í¬µÄ¼¼Êõ¡¢¹¤¾ßÀ´×öÊý¾Ý´¦Àí£¬ÔõôÕûºÏÕâÑùÒì¹¹µÄ¼¼Êõ¡¢¹¤¾ßÒÔ¼°ÔÚ´ËÖ®ÉϵÄÊý¾ÝÖÊÁ¿¼à¿ØÒ²ÊÇÒ»¸ö¼±Ðè½â¾öµÄÎÊÌâ¡£
ͼ1ÊÇÎÒÃÇÊý¾Ý´¦ÀíÆ½Ì¨µÄÒ»¸ö¸ÅÄîÐԼܹ¹¡£´ÓÊý¾ÝÉú²úÕßÕâ¶Ë£¬ÎÒÃÇͨ¹ýÔÚ¿Í»§¶ËÒÔ¼°·þÎñ¶ËʹÓÃͨÓõÄSDK£¬°´ÕÕͨÓõÄschemaÀ´²úÉúÊý¾Ý£¬Êý¾Ýͨ¹ý·Ö²¼ÔÚÈ«ÊÀ½çµÄÊý¾ÝÊÕ¼¯·þÎñ(collectors)À´·Ö·¢µ½ÏàÓ¦µÄKafka,
È»ºóͨ¹ýpub/subģʽÓɸ÷ÖÖ¸÷ÑùµÄ¼ÆËãÒÔ¼°´æ´¢¿ò¼ÜÀ´¶©ÔÄ¡£
ÕâÑù¸÷ÖÖÍŶӾͿÉÒÔÑ¡ÔñËûÃÇ×îÊìϤ»òÕßÒ»Ö±ÒÔÀ´Ê¹ÓõŤ¾ßÀ´×ö´¦Àí¡£ÀýÈ磬´Óʵʱ´¦ÀíµÄ½Ç¶È£¬¸÷¸öÒµÎñÍŶӿÉÒÔÑ¡ÓñÈÈçSpark»òÕß΢ÈíµÄUSQL
streaming´¦Àí¿ò¼Ü£¬ÒÔ¼°ÆäËûµÚÈý·½µÄ¹¤¾ßÀ´×öÒ»Ð©ÌØ¶¨³¡¾°µÄ·ÖÎö£¬±ÈÈçÈÕÖ¾·ÖÎöµÄSplunk¡¢½»»¥Ê½·ÖÎöµÄInteranaµÈ¡£ÔÚÅú´¦Àí¿ò¼ÜÉÏ£¬Óû§¿ÉÒÔÑ¡ÓÿªÔ´ÉçÇøµÄHadoop,¡¢Spark»òÕß΢ÈíµÄCosmosµÈ¡£

ͼ1£º ÕûºÏ¸÷¸öÒµÎñ¼¯ÍŵÄÒì¹¹Êý¾ÝϵͳµÄ¼Ü¹¹

ͼ2£º¿ìËÙÔö³¤µÄʵʱÊý¾Ý
Èçͼ2Ëùʾ£¬ÎÒÃÇÔÚÇ¨ÒÆ´óÊý¾Ýµ½Í¼1¼Ü¹¹µÄ¹ý³ÌÖУ¬Ò²¿´µ½ÊµÊ±Á÷ʽÊý¾ÝµÄ¿ìËÙÔö³¤¡£Ã¿Ìì·åÖµÏûÏ¢¸ß´ïÒ»ÍòÒÚ¸öÒÔÉÏ£¬Ã¿Ãë´¦ÀíÒ»°ÙÈýÊ®Íò¸öÏûÏ¢£¬
ÿÌì´¦Àí3.5PBÁ÷ʽÊý¾Ý¡£
Êý¾Ý¼à¿ØµÄ³¡¾°ÒÔ¼°¹¤×÷ÔÀí
3.1Êý¾Ý¼à¿Ø³¡¾°
»ùÓÚÒµÎñÐèÇó£¬ÎÒÃÇ×ܽá¸ÅÀ¨ÁËÐèÒª±»¼à¿ØµÄÊý¾Ý´¦Àí¹ÜµÀÌØÐÔ(Èçͼ3)
¶àÊý¾ÝÉú²úÕß(multiple data producers)£¬Êý¾ÝÀ´×Ô¿Í»§¶ËºÍ·þÎñ¶Ë;
¶à¸öÊý¾ÝÏû·ÑÕß(multiple data consumers)£¬ÕâÀïÌØÖ¸¸÷ÖÖÊý¾Ý´¦Àí¿ò¼Ü;
¶àÊý¾Ý¼à¿Ø½×¶Î(multiple stages)£¬´ÓÊý¾Ý²úÉúµ½Êý¾Ý´¦Àí£¬Êý¾ÝÍùÍùÁ÷¾¶à¸öÊý¾Ý¹ÜµÀµÄ×é¼þ£¬ÎÒÃÇÐèҪͨ¹ý¼à¿ØÈ·±£Ã¿¸ö½×¶ÎÊý¾Ý¶¼²»»á·¢Éú¶ªÊ§¡¢¸ßʱÑÓ¡¢ÒÔ¼°Òì³£¡£

ͼ3£º ¶àÊý¾ÝÉú²úÕß¡¢¶à½×¶Î¡¢¶àÊý¾ÝÏû·ÑÕßµÄÊý¾Ý¹ÜµÀ
3.2¹¤×÷ÔÀí
»ùÓÚͼ3µÄÊý¾Ý¹ÜµÀ£¬ÎÒÃǰÑÎÊÌâ¾ßÌ廯ΪÈçºÎÈ·±£»ùÓÚKafkaµÄÊý¾Ý¹ÜµÀÉÏÏÂÓεÄÊý¾ÝÍêÕûÐÔ¡¢ÊµÊ±ÐÔ¡¢Êý¾ÝÒì³£µÄ¼à²â¡£Í¼4ÊÇÒ»¸ö³éÏó»¯µÄ¼à¿Ø¼Ü¹¹ÒÔ¼°¹¤×÷ÔÀí¡£
À¶É«×é¼þÊÇÊý¾Ý¹ÜµÀÀïÊý¾ÝÁ÷¾µÄ¸÷¸ö´¦Àí½×¶Î;ÂÌÉ«×é¼þÊDZ¾ÎÄÖÐʵʱÊý¾ÝÖÊÁ¿¼à¿ØµÄºËÐÄ·þÎñAudit
Trail¡£ÔÚÊý¾ÝÁ÷¾¸÷¸ö×é¼þµÄͬʱ£¬ÏàÓ¦µÄÉó¼Æ(audit)Êý¾ÝÒ²»áͬʱ·¢µ½Audit Trail,
Õâ¸öÉó¼ÆÊý¾Ý¿ÉÒÔ¿´×÷ÊÇÒ»ÖÖÔªÊý¾Ý(meta data)£¬Ëü°üº¬¹ØÓÚÊý¾ÝÁ÷µÄÐÅÏ¢£¬ÀýÈç¸ÃÏûÏ¢ÊÇÔÚÄĸöÊý¾ÝÖÐÐÄ¡¢ÄĄ̈»úÆ÷²úÉú;¸ÃÏûÏ¢°üº¬¼¸Ìõ¼Ç¼¡¢´óС¡¢Ê±¼ä´ÁµÈ¡£Audit
Trail»ã×ÜÁ˸÷¸öÊý¾Ý´¦Àí×é¼þ·¢À´µÄÔªÊý¾Ýºó£¬¾Í¿ÉÒÔʵʱ×ö¸÷ÖÖÊý¾ÝÖÊÁ¿µÄÆÀ¹À£¬±ÈÈçÊý¾ÝÔÚ´Ëʱ¿ÌµÄÍêÕûÐÔÈçºÎ¡¢ÊµÊ±ÐÔÈçºÎ¡¢ÓÐÎÞÒì³£¡£
»ùÓÚKafkaÓëSparkµÄʵʱ´óÊý¾ÝÖÊÁ¿¼à¿ØÆ½Ì¨

ͼ4£ºÊý¾ÝÁ÷Óë¼à¿ØÁ÷£¬¼à¿ØÁ÷ʵʱ»ã×ܵ½Audit Trail
»ùÓÚͼ5µÄÉó¼ÆÔªÊý¾Ý£¬Ò»µ©·¢ÉúÊý¾ÝÖÊÁ¿ÎÊÌ⣬¹¤³Ìʦ¿ÉÒÔ¿ìËÙ¶¨Î»ÊÇÄĸöÊý¾ÝÖÐÐĵÄÄĄ̈·þÎñÆ÷ÔÚʲôʱ¼ä¶Î·¢ÉúÁËÎÊÌ⣬Ȼºó¿ìËÙ²ÉÈ¡ÏàÓ¦Ðж¯À´½â¾ö»ò»º½âÎÊÌ⣬²¢°Ñ¶ÔÏÂÓÎÊý¾Ý´¦ÀíµÄÓ°Ïì½µµ½×îµÍ¡£
»ùÓÚKafkaÓëSparkµÄʵʱ´óÊý¾ÝÖÊÁ¿¼à¿ØÆ½Ì¨

ͼ5£º Éó¼ÆÔªÊý¾ÝµÄ½á¹¹
¿É±»¼à¿ØµÄÊý¾ÝÖÊÁ¿ÎÊÌâ¿ÉÒÔ·ÖΪÈçϼ¸Àࣺ
Êý¾ÝʱÑÓ³¬³ö¹æ¶¨µÄSLA (service level agreement)
¹¤³Ìʦ¿ÉÒÔͨ¹ýÈçͼ6ËùʾµÄʱÑÓ״̬ͼ¿ìËÙÁ˽âÔÚÊý¾ÝÖÊÁ¿Ê±ÑÓÕâ¸öά¶ÈÊÇ·ñÕý³££¬Õâ¶ÔÓÚ¶ÔʵʱÐÔÒªÇó±È½ÏÑϸñµÄÊý¾Ý²úÆ·¼°Ó¦Ó÷dz£ÖØÒª£¬Èç¹ûÊý¾ÝÑÓ³Ùµ½À´£¬ºÜ¶àʱºò¾ÍʧȥÁËÒâÒå¡£
ÐèҪעÒâµÄÊÇ£¬Í¼±íÔÚÕâÀïÆðµ½µÄÖ»ÊǸ¨Öú×÷Óã¬ÔÚÕæÕýµÄÉú²ú»·¾³ÖÐÊÇͨ¹ýϵͳAPIµ÷ÓÃÀ´¶¨ÆÚ¼ì²éSLAµÄ·ûºÏÇé¿ö£¬Ò»µ©³¬³öʱÑÓãÐÖµ£¬»áͨ¹ýµç»°¡¢¶ÌÐŵÈÊÖ¶Îֵ֪ͨ°àµÄ¹¤³ÌʦÀ´ÊµÊ±½â¾öÎÊÌâ¡£

ͼ6£º¼òµ¥Ê±ÑÓÖù״ͼ
Êý¾ÝÔÚÒÆ¶¯Öз¢Éú¶ªÊ§µ¼ÖÂÍêÕûÐÔ²»Âú×ãSLA (service level agreement)
¹¤³Ìʦ¿ÉÒÔͨ¹ýͼ7ÖÐËùʾ¼òµ¥Í¼±íÀ´Á˽âÊý¾ÝÍêÕûÐÔµÄ״̬£¬Í¼7Ëùʾ°üº¬Á½¸öÊý¾Ý´¦Àí½×¶Î£ºÒ»¸öÊý¾ÝÉú²úÕߺÍÁ½¸öÊý¾ÝÏû·ÑÕßµÄÓ¦Óð¸Àý¡£ËùÒÔͼ±íÖÐʵ¼ÊÉÏÊÇÈýÌõÏߣ¬ÂÌÉ«ÊÇÉú²úÕßµÄʵʱÊý¾ÝÁ¿£¬À¶É«ºÍ×ÏÉ«ÏßÊÇÁ½¸öÊý¾ÝÏû·ÑÕß´¦ÀíµÄÊý¾ÝÁ¿¡£Èç¹ûÔÚÀíÏëÇé¿öÏ£¬Êý¾ÝÍêÕûÐÔûÓÐÎÊÌ⣬ÕâÈýÌõÏßÊÇÍêÈ«ÖØºÏ¡£±¾ÀýÖÐÔÚ×îºóÒ»¸öµã³öÏÖÁ˷ֲ棬´ú±íÊý¾ÝÍêÕûÐÔ³öÏÖÎÊÌ⣬ÐèÒª¹¤³Ìʦ½øÐиÉÔ¤¡£

ͼ7£º¼òµ¥ÍêÕûÐÔͼ±í
Êý¾Ý±¾Éí·¢ÉúÒì³£-ͨ¹ýÒì³£¼ì²âÀ´ÊµÊ±¼à¿Ø
Êý¾Ý±¾Éí·¢ÉúÒì³££¬ÎÒÃÇÓÉÏàÓ¦µÄ»ùÓÚͳ¼ÆÔªÊý¾ÝµÄÒì³£¼ì²â(Èçͼ8)À´×öʵʱ¼à¿Ø¡£Òì³£¼ì²âÊÇÒ»¸öÔÚ¹¤Òµ½ç·Ç³£ÆÕ±éµÄÎÊÌâºÍÌôÕ½£¬¼¸ºõÿ¸ö»¥ÁªÍø¹«Ë¾¶¼»áÓÐ×öÒì³£¼ì²âµÄ·þÎñ»òƽ̨£¬µ«ÊÇ×öºÃºÜ²»ÈÝÒ×£¬ÕâÊÇÒ»¸ö¿ÉÒÔµ¥¶ÀдһƪÎÄÕµĴóÌâÄ¿£¬ÕâÀïÖ»Êǵ¥±ÙÒ»¸öÕ½Ú×ö¼òµ¥µÄËã·¨½éÉÜ¡£

ͼ8£º»ùÓÚÉó¼ÆÊý¾ÝµÄÒì³£¼ì²â
±¾ÀýÊÇͨ¹ý¶ÔÓÚÊý¾ÝÁ¿µÄÒì³£¼ì²âÀ´·¢ÏÖÉÏÓÎдlogÎÊÌ⣬»òÕ߯äËûÊý¾ÝÉú²úµÄÂß¼ÎÊÌâ¡£
3.3Òì³£¼ì²â
Òì³£¼ì²âËã·¨1

ͼ 9 Holt-WintersËã·¨
ÎÒÃDzÉÓÃÁËHolt-WintersËã·¨(ͼ9)À´ÑµÁ·Ä£ÐͺÍ×öÔ¤²â£¬²¢ÔÚ´ËÖ®ÉÏ×öÁ˺ܶà¸Ä½øÀ´Ôö¼ÓËã·¨µÄÇ¿½¡ÐÔºÍÈÝ´íÄÜÁ¦¡£
Ç¿½¡ÐÔÉϵĸĽø°üÀ¨£º
ʹÓÃMedian Absolute Deviation (MAD) µÃµ½¸üºÃµÄ¹ÀÖµ;
´¦ÀíÊý¾Ý¶ªµãºÍÔëÉù (ÀýÈçÊý¾Ýƽ»¬)¡£
¹¦ÄÜÉϵĸĽø°üÀ¨£º
×Ô¶¯»ñÈ¡Ç÷ÊÆºÍÖÜÆÚÐÅÏ¢;
ÔÊÐíÓû§È˹¤±ê¼ÇºÍ·´À¡À´¸üºÃµÄ´¦ÀíÇ÷ÊÆ±ä»¯¡£
ͨ¹ý±È½ÏÔ¤²âÖµºÍʵ¼ÊÖµ£¬ÎÒÃDzÉÓÃGLR (Generalized Likelihood Ratio)
À´·¢ÏÖÒì³£µã¡£ÔÚÕâÉÏÃæÎÒÃÇÒ²×öÁËÏàÓ¦µÄ¸Ä½ø£¬°üÀ¨£º
Floating Threshold GLR, »ùÓÚеÄÊäÈëÊý¾Ý¶¯Ì¬µ÷ÕûÄ£ÐÍ;
¶ÔÓÚÔëÉù±È½Ï´óµÄÊý¾Ý×öÈ¥³ýÒì³£µã¡£
Òì³£¼ì²âËã·¨2
ÕâÊÇÒ»¸ö»ùÓÚExchangeability MartingaleµÄÔÚÏßʱ¼äÐòÁеÄÒì³£¼ì²âËã·¨£¬ÆäºËÐľÍÊǼÙÉèÊý¾ÝµÄ·Ö²¼ÊÇÎȶ¨µÄ¡£Èç¹ûеÄÊý¾ÝµãµÄ¼ÓÈëµ¼ÖÂÊý¾ÝµÄ·Ö²¼(distribution)·¢Éú±È½Ï´óµÄ±ä»¯£¬ÎÒÃǾÍÈÏΪÒì³£·¢ÉúÁË¡£ËùÒÔ»ùÓÚÀúÊ·Êý¾Ý£¬ÎÒÃÇÐèÒª¶¨ÒåÒ»¸öÐÂÖµÒì³£¹«Ê½(New
value strangeness)¡£ÏÂÃæÊÇÕâЩ¹«Ê½µÄ¹¹³É£¬¶ÔÊýѧ²»¸ÐÐËȤµÄ¶ÁÕß¿ÉÒÔÂÔÈ¥¡£
ÔÚij¸öʱ¿Ìt, ÎÒÃÇÊÕµ½Ò»¸öеÄÊý¾Ýµã£¬¶ÔÓÚÀúʷÿ¸öÊý¾Ýi£º

±¨¾¯´¥·¢Ãż÷ͨ¹ýDoob¡¯s maximal inequality¿ØÖÆ

¶ÔÓÚÒì³£µã£¬MartingaleµÄÖµ¾Í»á´óÓÚÃż÷Öµ¡£
Òì³£¼ì²âËã·¨3
ÕâÊÇÒ»¸ö¼òµ¥¶ø·Ç³£ÓÐЧµÄ»ùÓÚÀúÊ·Êý¾ÝµÄÖ¸Êýƽ»¬Ëã·¨¡£
ËüÊ×ÏÈ»ùÓÚÀúÊ·Êý¾ÝÉú³É¶¯Ì¬ÉÏϽ磺
Threshold (width) = min(max(M1*Mean, M2*Standard
Deviation), M3*Mean) (M1
Alert: |Value ¨C predicated value| > Threshold
Ô¤²âÖµ = S1+12S2+14S3+18S4+116S51+12+14+18+116
ÓŵãÔÚÓÚ´¦ÀíÖÜÆÚÐÔÊý¾ÝµÄÒì³£¼ì²âºÜºÃ£¬²¢ÇÒÔÊÐíÓû§·´À¡ºÍ±ê¼ÇÀ´µ÷Õû¶¯Ì¬ÉÏϽ硣
ϵͳÉè¼Æ¸ÅÊö
»ùÓÚÒµÎñ³¡¾°µÄÐèÒª£¬ÎÒÃÇÔÚÉè¼ÆºÍʵÏÖÖÐÐèÒª´ï³ÉһϵÁеÄÄ¿±êÒÔ¼°´¦ÀíÏàÓ¦µÄÌôÕ½£º
¼à¿ØÁ÷ʽÊý¾ÝµÄÍêÕûÐÔÓëʱÑÓ;
ÐèÒª¼à¿ØµÄÊý¾Ý¹ÜµÀ(pipeline)¾ßÓжà¸öÊý¾ÝÉú²úÕß¡¢¶à´¦Àí½×¶Î¡¢¶àÊý¾ÝÏû·ÑÕßµÄÌØÐÔ;
Êý¾ÝÖÊÁ¿µÄ¼à¿ØÐèÒª½üʵʱ(near real time);
Êý¾Ý·¢ÉúÎÊÌâµÄʱºò£¬ÌṩÏàÓ¦µÄÕï¶ÏÐÅÏ¢À´°ïÖú¹¤³ÌʦѸËÙ½â¾öÎÊÌâ;
¼à¿ØÆ½Ì¨µÄ·þÎñ±¾ÉíÐèÒª³¬¼¶Îȶ¨ºÍ¸ß¿ÉÓÃ, 99.9%ÒÔÉÏÔÚÏßʱ¼ä;
¼à¿ØÓëÉ󼯱¾ÉíÊǸ߶ȿÉÐÅ;
ƽ̨¼Ü¹¹¿ÉÒÔˮƽÀ©Õ¹ (Scale out)¡£
4.1¸ß¿ÉÓÿÉÀ©Õ¹µÄ¼Ü¹¹
Èçͼ10Ëùʾ£¬Éó¼ÆÔªÊý¾Ýͨ¹ýǰ¶Ë·þÎñ(front end web service)µ½´ïKafka,
ÎÒÃÇÀûÓÃKafkaÀ´ÊµÏָ߿ÉÓõÄÁÙʱ´æ´¢(transient storage), ÕâÑù£¬ÎÒÃǵÄÊý¾ÝÉú²úÕߺÍÏû·ÑÕßÔÚ·¢ËÍÉó¼ÆÊý¾ÝµÄͬʱ£¬¾Í²»»á·¢Éú×èÈû½ø¶øÓ°Ïì¸üÖØÒªµÄÊý¾ÝÁ÷¡£
ͨ¹ýSpark streamingµÄÓ¦Ó㬰ÑÉó¼ÆÊý¾Ý°´ÕÕʱ¼ä´°¿Ú¾ÛºÏ£¬Í¬Ê±ÓÐÏàÓ¦µÄÂß¼´¦ÀíÈ¥ÖØ£¬Ííµ½ÒÔ¼°·Ç˳Ðòµ½À´µÄÊý¾Ý£¬Í¬Ê±×ö¸÷ÖÖÈÝ´í´¦Àí±£Ö¤¸ß¿ÉÓá£
ElasticsSearch×÷Ϊ´æ´¢¾ÛºÏµÄÉó¼ÆÊý¾Ý£¬Í¨¹ýKibana×ö±¨±íչʾ£¬½ø¶øÍ¨¹ýData
Analysis service¶ÔÍâÌṩAPIÀ´Ê¹µÃÓû§»ñÈ¡¸÷ÖÖÊý¾ÝÖÊÁ¿ÐÅÏ¢¡£
Data Analysis Service×÷Ϊ×îÖÕµÄAPI¶Ë£¬Ìṩ¸÷ÖÖÊý¾ÝÍêÕûÐÔ¡¢ÊµÊ±ÐÔ¡¢Òì³£µÄÐÅÏ¢¡£
ÉÏÊö×é¼þ£¬Ã¿¸ö¶¼Éè¼Æ³É¿ÉÒÔ¶ÀÁ¢Ë®Æ½À©Õ¹(Scale out), ²¢ÇÒÔÚÉè¼ÆÉϱ£Ö¤¸ßÈÝ´íÒÑʵÏָ߿ÉÓÃÐÔ¡£

ͼ10£ºAudit TrailÊý¾Ý´¦Àí¼Ü¹¹
4.2ÒìµØË«»îµÄ¿É¿¿ÐÔ±£ÕÏ
ͨ¹ýË«Êý¾ÝÖÐÐÄActive-ActiveÔÖ±¸(Disaster recovery)Èçͼ11Ëùʾ£¬À´½øÒ»²½±£Ö¤¸ß¿ÉÓø߿ɿ¿µÄ·þÎñ¡£ÕûÌå¼Ü¹¹±£Ö¤Êý¾ÝÁ÷ͬʱͨ¹ýÁ½¸öͬ¹¹µÄÉ󼯴¦Àí¹ÜµÀ½øÐд¦Àí£¬¼´Ê¹Ò»¸öÊý¾ÝÖÐÐÄÒòΪ¸÷ÖÖÔÒòÏÂÏߣ¬ÕûÌå·þÎñ»¹ÊÇ´¦ÓÚ¿ÉÓÃ״̬£¬½ø¶ø±£Ö¤È«ÌìºòµÄÊý¾ÝÖÊÁ¿Éó¼ÆÓë¼à¿Ø¡£

ͼ11£ºË«Êý¾ÝÖÐÐÄActive-Active Disaster Recovery
4.3¸ß¶È¿ÉÐŵÄÉó¼ÆÓë¼à¿Ø·þÎñ
¶ÔÓÚÈÎºÎ¼à¿Ø·þÎñÀ´Ëµ£¬¾³£±»ÖÊÒɵľÍÊÇÊÇ·ñ¼à¿Ø·þÎñ±¾ÉíµÄ½á¹ûÊÇ׼ȷ¿ÉÐŵġ£ÎªÁ˱£Ö¤ÕâÒ»µã£¬ÎÒÃÇͨ¹ýÁ½ÖÖ·½Ê½À´±£Ö¤·þÎñµÄ¿ÉÐŶȣº
ÓÃÀ´Éó¼Æ×ÔÉí(Audit for audit)(ͼ12);
Synthetic probe¡£

ͼ12£ºÉó¼Æ×ÔÉí
ÔÚ»ùÓÚKafka/Spark/ESµÄ¹ÜµÀÖ®Í⣬ÎÒÃÇ»¹ÓÐÒ»Ì×¶ÀÁ¢µÄ¾ÓÉESµÄÉó¼ÆÔªÊý¾ÝµÄ´¦Àí¹ÜµÀ£¬Í¨¹ý±È½ÏÉÏÊöÁ½¸ö¹ÜµÀµÄ½á¹û£¬ÎÒÃǾÍÄܱ£Ö¤Éó¼ÆÊý¾ÝµÄ¿É¿¿ÐÔ¡£
ÁíÍ⣬»ùÓÚsynthetic probeµÄ·½Ê½£¬ÎÒÃÇÿ·ÖÖӻᷢËÍÒ»×ésyntheticÊý¾Ý½øÈëǰ¶Ë·þÎñ(front
end web service), È»ºóÊÔͼ´ÓData Analysis web service ¶Á³ö£¬Í¨¹ýÕâÖÖ·½Ê½½øÒ»²½±£ÕÏÊý¾ÝµÄ¿É¿¿ÐÔ¡£
4.4¸¨ÖúÊý¾ÝÖÊÁ¿ÎÊÌâµÄÕï¶Ï
µ±Êý¾ÝÖÊÁ¿·¢ÉúÎÊÌ⣬Audit TrailÌṩÁËÔʼµÄÉó¼ÆÔªÊý¾ÝÀ´°ïÖú¹¤³Ìʦ½øÒ»²½×öÎÊÌâµÄÕï¶Ï¡£¹¤³Ìʦ¿ÉÒÔʹÓÃÕâЩԪÊý¾ÝºÍËûÃÇ×Ô¼ºµÄtraceÀ´½øÒ»²½JOIN,
À´ÌṩһÖÖ½»»¥Ê½µÄÕï¶Ï£¬Èçͼ13¡£

ͼ13£º°ÑTraceºÍÉó¼ÆÔªÊý¾Ý×öJOIN, ¿ÉÊÓ»¯µÄ½»»¥Õï¶ÏÊÓͼ
Ч¹ûÆÀ¹ÀÓë×ܽá
ͨ¹ýÉÏÊöϵͳ¼Ü¹¹µÄÉè¼ÆÓ벿Êð£¬ÎÒÃÇʵÏÖÁËһϵÁÐÖ§³Ö¹«Ë¾Bing,¡¢Office,¡¢SkypeÒµÎñ·¢Õ¹µÄÊý¾ÝÖÊÁ¿¼à¿ØÄ¿±ê£º
¼à¿ØÁ÷ʽÊý¾ÝµÄÍêÕûÐÔÓëʱÑÓ;
ÐèÒª¼à¿ØµÄÊý¾Ý¹ÜµÀ(pipeline)¾ßÓжà¸öÊý¾ÝÉú²úÕß¡¢¶à´¦Àí½×¶Î¡¢¶àÊý¾ÝÏû·ÑÕßµÄÌØÐÔ;
Êý¾ÝÖÊÁ¿µÄ¼à¿ØÐèÒª½üʵʱ(near real time);
Êý¾Ý·¢ÉúÎÊÌâµÄʱºò£¬ÐèÒªÌṩÏàÓ¦µÄÕï¶ÏÐÅÏ¢À´°ïÖú¹¤³ÌʦѸËÙ½â¾öÎÊÌâ;
¼à¿ØÆ½Ì¨µÄ·þÎñ±¾ÉíÐèÒª³¬¼¶Îȶ¨ºÍ¸ß¿ÉÓÃ, 99.9%ÔÚÏßʱ¼ä
¼à¿ØÓëÉ󼯱¾ÉíÊǸ߶ȿÉÐÅ;
ƽ̨¼Ü¹¹¿ÉÒÔˮƽÀ©Õ¹ (Scale out)¡£
ͬʱ£¬ÎÒÃÇ×¼±¸¿ªÔ´Õâ¸öƽ̨·þÎñ£¬ÒòΪÎÒÃÇÏàÐÅÕâ¸ö·þÎñ±¾ÉíÊÇÒ»¸ö×㹻ͨÓû¯µÄ½â¾ö·½°¸£¬¿ÉÒÔÓ¦ÓÃÓںܶ๫˾µÄÊý¾ÝÖÊÁ¿¼à¿Ø³¡¾°¡£
|