»¥ÁªÍøÁìÓòµÄʵʱ¼ÆËãÒ»°ã¶¼ÊÇÕë¶Ôº£Á¿Êý¾Ý½øÐе쬳ýÁËÏñ·Çʵʱ¼ÆËãµÄÐèÇó£¨Èç¼ÆËã½á¹û׼ȷ£©ÒÔÍ⣬ʵʱ¼ÆËã×îÖØÒªµÄÒ»¸öÐèÇóÊÇÄܹ»ÊµÊ±ÏìÓ¦¼ÆËã½á¹û£¬Ò»°ãÒªÇóΪÃë¼¶¡£ÊµÊ±¼ÆËãµÄ½ñÌ죬ҵ½ç¶¼Ã»ÓÐÒ»¸ö׼ȷµÄ¶¨Ò壬ʲô½Ðʵʱ¼ÆË㣿ʲô²»ÊÇ£¿½ñÌìÕâÆªÎÄÕÂÏêϸ½éÉÜÁËʵʱ¼ÆË㣬Á÷Êý¾Ý´¦Àíϵͳ¼ò½éÓë¼òµ¥·ÖÎö¡£
ÒÔÏÂΪ×÷ÕßÔÎÄ£º
Ò»£®ÊµÊ±¼ÆËãµÄ¸ÅÄî
ʵʱ¼ÆËãÒ»°ã¶¼ÊÇÕë¶Ôº£Á¿Êý¾Ý½øÐеģ¬Ò»°ãÒªÇóΪÃë¼¶¡£ÊµÊ±¼ÆËãÖ÷Òª·ÖΪÁ½¿é:Êý¾ÝµÄʵʱÈë¿â¡¢Êý¾ÝµÄʵʱ¼ÆËã¡£
Ö÷ÒªÓ¦Óõij¡¾°£º
1) Êý¾ÝÔ´ÊÇʵʱµÄ²»¼ä¶ÏµÄ£¬ÒªÇóÓû§µÄÏìӦʱ¼äÒ²ÊÇʵʱµÄ£¨±ÈÈç¶ÔÓÚ´óÐÍÍøÕ¾µÄÁ÷ʽÊý¾Ý£ºÍøÕ¾µÄ·ÃÎÊPV/UV¡¢Óû§·ÃÎÊÁËʲôÄÚÈÝ¡¢ËÑË÷ÁËʲôÄÚÈݵȣ¬ÊµÊ±µÄÊý¾Ý¼ÆËãºÍ·ÖÎö¿ÉÒÔ¶¯Ì¬ÊµÊ±µØË¢ÐÂÓû§·ÃÎÊÊý¾Ý£¬Õ¹Ê¾ÍøÕ¾ÊµÊ±Á÷Á¿µÄ±ä»¯Çé¿ö£¬·ÖÎöÿÌì¸÷СʱµÄÁ÷Á¿ºÍÓû§·Ö²¼Çé¿ö£©
2) Êý¾ÝÁ¿´óÇÒÎÞ·¨»òû±ØÒªÔ¤Ë㣬µ«ÒªÇó¶ÔÓû§µÄÏìӦʱ¼äÊÇʵʱµÄ¡£±ÈÈç˵£º
×òÌìÀ´×Ôÿ¸öÊ¡·Ý²»Í¬ÐÔ±ðµÄ·ÃÎÊÁ¿·Ö²¼£¬×òÌìÀ´×Ôÿ¸öÊ¡·Ý²»Í¬ÐÔ±ð²»Í¬ÄêÁ䲻ְͬҵ²»Í¬Ãû×åµÄ·ÃÎÊÁ¿·Ö²¼¡£
¶þ£®ÊµÊ±¼ÆËãµÄÏà¹Ø¼¼Êõ
Ö÷Òª·ÖΪÈý¸ö½×¶Î£¨´ó¶àÊÇÈÕÖ¾Á÷£©:
Êý¾ÝµÄ²úÉúÓëÊÕ¼¯½×¶Î¡¢´«ÊäÓë·ÖÎö´¦Àí½×¶Î¡¢´æ´¢¶Ô¶ÔÍâÌṩ·þÎñ½×¶Î

ÏÂÃæ¾ßÌåÕë¶ÔÉÏÃæÈý¸ö½×¶ÎÏêϸ½éÉÜÏÂ
1£©Êý¾Ýʵʱ²É¼¯£º
ÐèÇ󣺹¦ÄÜÉϱ£Ö¤¿ÉÒÔÍêÕûµÄÊÕ¼¯µ½ËùÓÐÈÕÖ¾Êý¾Ý£¬ÎªÊµÊ±Ó¦ÓÃÌṩʵʱÊý¾Ý£»ÏìӦʱ¼äÉÏÒª±£Ö¤ÊµÊ±ÐÔ¡¢µÍÑÓ³ÙÔÚ1Ãë×óÓÒ£»ÅäÖüòµ¥£¬²¿ÊðÈÝÒ×£»ÏµÍ³Îȶ¨¿É¿¿µÈ¡£
ĿǰµÄ²úÆ·£ºFacebookµÄScribe¡¢LinkedInµÄKafka¡¢ClouderaµÄFlume£¬ÌÔ±¦¿ªÔ´µÄTimeTunnel¡¢HadoopµÄChukwaµÈ£¬¾ù¿ÉÒÔÂú×ãÿÃëÊý°ÙMBµÄÈÕÖ¾Êý¾Ý²É¼¯ºÍ´«ÊäÐèÇó¡£ËûÃǶ¼ÊÇ¿ªÔ´ÏîÄ¿¡£
2£©Êý¾Ýʵʱ¼ÆËã
ÔÚÁ÷Êý¾Ý²»¶Ï±ä»¯µÄÔ˶¯¹ý³ÌÖÐʵʱµØ½øÐзÖÎö£¬²¶×½µ½¿ÉÄܶÔÓû§ÓÐÓõÄÐÅÏ¢£¬²¢°Ñ½á¹û·¢ËͳöÈ¥¡£

ʵʱ¼ÆËãĿǰµÄÖ÷Á÷²úÆ·£º
- YahooµÄS4£ºS4ÊÇÒ»¸öͨÓõġ¢·Ö²¼Ê½µÄ¡¢¿ÉÀ©Õ¹µÄ¡¢·ÖÇøÈÝ´íµÄ¡¢¿É²å°ÎµÄÁ÷ʽϵͳ£¬Yahoo¿ª·¢S4ϵͳ£¬Ö÷ÒªÊÇΪÁ˽â¾ö£ºËÑË÷¹ã¸æµÄÕ¹ÏÖ¡¢´¦ÀíÓû§µÄµã»÷·´À¡¡£
- TwitterµÄStorm£ºÊÇÒ»¸ö·Ö²¼Ê½µÄ¡¢ÈÝ´íµÄʵʱ¼ÆËãϵͳ¡£¿ÉÓÃÓÚ´¦ÀíÏûÏ¢ºÍ¸üÐÂÊý¾Ý¿â£¨Á÷´¦Àí£©£¬ÔÚÊý¾ÝÁ÷ÉϽøÐгÖÐø²éѯ£¬²¢ÒÔÁ÷µÄÐÎʽ·µ»Ø½á¹ûµ½¿Í»§¶Ë£¨³ÖÐø¼ÆË㣩£¬²¢Ðл¯Ò»¸öÀàËÆÊµÊ±²éѯµÄÈȵã²éѯ£¨·Ö²¼Ê½µÄRPC£©¡£
- Facebook µÄPuma£ºFacebookʹÓÃpumaºÍHBaseÏà½áºÏÀ´´¦ÀíʵʱÊý¾Ý£¬ÁíÍâFacebook·¢±íһƪÀûÓÃHBase/Hadoop½øÐÐʵʱÊý¾Ý´¦ÀíµÄÂÛÎÄ£¨ApacheHadoop Goes Realtime at Facebook£©£¬Í¨¹ýһЩʵʱÐÔ¸ÄÔ죬ÈÃÅú´¦Àí¼ÆËãÆ½Ì¨Ò²¾ß±¸ÊµÊ±¼ÆËãµÄÄÜÁ¦¡£
¹ØÓÚÕâÈý¸ö²úÆ·µÄ¾ßÌå½éÉܼܹ¹·ÖÎö£ºhttp://www.kuqin.com/system-analysis/20120111/317322.html

ÏÂÃæÊÇS4ºÍStormµÄÏêϸ¶Ô±È

ÆäËûµÄ²úÆ·£º
ÔçÆÚµÄ£ºIBMµÄStream Base¡¢ Borealis¡¢Hstreaming¡¢Esper
4.?ÌÔ±¦µÄʵʱ¼ÆËã¡¢Á÷ʽ´¦Àí
1) ÒøºÓÁ÷Êý¾Ý´¦ÀíÆ½Ì¨£ºÍ¨ÓõÄÁ÷Êý¾Ýʵʱ¼ÆËãϵͳ£¬ÒÔʵʱÊý¾Ý²ú³öµÄµÍÑÓ³Ù¡¢¸ßÍÌͺ͸´ÓÃÐÔΪ³õÖÔºÍÄ¿±ê£¬²ÉÓÃactorÄ£Ð͹¹½¨·Ö²¼Ê½Á÷Êý¾Ý¼ÆËã¿ò¼Ü£¨µ×²ã»ùÓÚakka£©£¬¹¦ÄÜÒ×À©Õ¹¡¢²¿·ÖÈÝ´í¡¢Êý¾ÝºÍ״̬¿É¼à¿Ø¡£ÒøºÓ¾ßÓд¦ÀíʵʱÁ÷Êý¾Ý£¨ÈçTimeTunnelÊÕ¼¯µÄʵʱÊý¾Ý£©ºÍ¾²Ì¬Êý¾Ý£¨Èç±¾µØÎļþ¡¢HDFSÎļþ£©µÄÄÜÁ¦£¬Äܹ»ÌṩÁé»îµÄʵʱÊý¾ÝÊä³ö£¬²¢Ìṩ×Ô¶¨ÒåµÄÊý¾ÝÊä³ö½Ó¿ÚÒÔ±ãÀ©Õ¹ÊµÊ±¼ÆËãÄÜÁ¦¡£ÒøºÓĿǰÖ÷ÒªÊÇΪħ·½ÌṩʵʱµÄ½»Òס¢ä¯ÀÀºÍËÑË÷ÈÕÖ¾µÈÊý¾ÝµÄʵʱ¼ÆËãºÍ·ÖÎö¡£
2) »ùÓÚStormµÄÁ÷ʽ´¦Àí£¬Í³¼Æ¼ÆËã¡¢³ÖÐø¼ÆË㡢ʵʱÏûÏ¢´¦Àí¡£
ÔÚÌÔ±¦£¬Storm±»¹ã·ºÓÃÀ´½øÐÐʵʱÈÕÖ¾´¦Àí£¬³öÏÖÔÚʵʱͳ¼Æ¡¢ÊµÊ±·ç¿Ø¡¢ÊµÊ±ÍƼöµÈ³¡¾°ÖС£Ò»°ãÀ´Ëµ£¬ÎÒÃÇ´ÓÀàkafkaµÄmetaQ»òÕß»ùÓÚHBaseµÄtimetunnelÖжÁȡʵʱÈÕÖ¾ÏûÏ¢£¬¾¹ýһϵÁд¦Àí£¬×îÖÕ½«´¦Àí½á¹ûдÈëµ½Ò»¸ö·Ö²¼Ê½´æ´¢ÖУ¬Ìṩ¸øÓ¦ÓóÌÐò·ÃÎÊ¡£ÎÒÃÇÿÌìµÄʵʱÏûÏ¢Á¿´Ó¼¸°ÙÍòµ½¼¸Ê®ÒÚ²»µÈ£¬Êý¾Ý×ÜÁ¿´ïµ½TB¼¶¡£¶ÔÓÚÎÒÃÇÀ´Ëµ£¬StormÍùÍù»áÅäºÏ·Ö²¼Ê½´æ´¢·þÎñÒ»ÆðʹÓá£ÔÚÎÒÃÇÕýÔÚ½øÐеĸöÐÔ»¯ËÑË÷ʵʱ·ÖÎöÏîÄ¿ÖУ¬¾ÍʹÓÃÁËtimetunnel +HBase + Storm + UPSµÄ¼Ü¹¹£¬Ã¿Ìì´¦Àí¼¸Ê®ÒÚµÄÓû§ÈÕÖ¾ÐÅÏ¢£¬´ÓÓû§ÐÐΪ·¢Éúµ½Íê³É·ÖÎöÑÓ³ÙÔÚÃë¼¶¡£
3) ÀûÓÃHabaseʵÏÖµÄOnlineÓ¦ÓÃ
4£©ÊµÊ±²éѯ·þÎñ
- ?°ëÄڴ棺ʹÓÃRedis¡¢Memcache¡¢MongoDB¡¢BerkeleyDBµÈÄÚ´æÊý¾Ý¿âÌṩÊý¾Ýʵʱ²éѯ·þÎñ£¬ÓÉÕâЩϵͳ½øÐг־û¯²Ù×÷¡£
- ?È«´ÅÅÌ£ºÊ¹ÓÃHBaseµÈÒÔ·Ö²¼Ê½Îļþϵͳ£¨HDFS£©Îª»ù´¡µÄNoSQLÊý¾Ý¿â£¬¶ÔÓÚkey-valueÒýÇæ£¬¹Ø¼üÊÇÉè¼ÆºÃkeyµÄ·Ö²¼¡£
- ?È«Äڴ棺ֱ½ÓÌṩÊý¾Ý¶ÁÈ¡·þÎñ£¬¶¨ÆÚdumpµ½´ÅÅÌ»òÊý¾Ý¿â½øÐг־û¯¡£
¹ØÓÚʵʱ¼ÆËãÁ÷Êý¾Ý·ÖÎöÓ¦ÓþÙÀý£º
¶ÔÓÚµç×ÓÉÌÎñÍøÕ¾ÉϵĵêÆÌ£º
1£©ÊµÊ±Õ¹Ê¾Ò»¸öµêÆÌµÄµ½·Ã¹Ë¿ÍÁ÷Ë®ÐÅÏ¢£¬°üÀ¨·ÃÎÊʱ¼ä¡¢·Ã¿ÍÐÕÃû¡¢·Ã¿ÍµØÀíλÖᢷÿÍIP¡¢·Ã¿ÍÕýÔÚ·ÃÎʵÄÒ³ÃæµÈÐÅÏ¢£»
2£©ÏÔʾij¸öµ½·Ã¹Ë¿ÍµÄËùÓÐÀúÊ·À´·Ã¼Ç¼£¬Í¬Ê±ÊµÊ±¸ú×ÙÏÔʾij¸ö·Ã¿ÍÔÚÒ»¸öµêÆÌÕýÔÚ·ÃÎʵÄÒ³ÃæµÈÐÅÏ¢£»
3£©Ö§³Ö¸ù¾Ý·Ã¿ÍµØÀíλÖᢷÃÎÊÒ³Ãæ¡¢·ÃÎÊʱ¼äµÈ¶àÖÖά¶ÈϵÄʵʱ²éѯÓë·ÖÎö¡£

ÏÂÃæ¶ÔStormÏêϸ½éÉÜÏ£º

Õû¸öÊý¾Ý´¦ÀíÁ÷³Ì°üÀ¨ËIJ¿·Ö£º
µÚÒ»²¿·ÖÊÇÊý¾Ý½ÓÈë¸Ã²¿·Ö´Óǰ¶ËÒµÎñϵͳ»ñÈ¡Êý¾Ý¡£
µÚ¶þ²¿·ÖÊÇ×îÖØÒªµÄStorm ʵʱ´¦Àí²¿·Ö£¬Êý¾Ý´Ó½ÓÈë²ã½ÓÈ룬¾¹ýʵʱ´¦Àíºó´«ÈëÊý¾ÝÂ䵨²ã£»
µÚÈý²¿·ÖΪÊý¾ÝÂ䵨²ã£¬¸Ã²¿·ÖÖ¸¶¨ÁËÊý¾ÝµÄÂ䵨·½Ê½£»
µÚËIJ¿·ÖÔªÊý¾Ý¹ÜÀíÆ÷¡£
Êý¾Ý½ÓÈë²ã
¸Ã²¿·ÖÓжàÖÖÊý¾ÝÊÕ¼¯·½Ê½£¬°üÀ¨Ê¹ÓÃÏûÏ¢¶ÓÁУ¨MetaQ£©£¬Ö±½Óͨ¹ýÍøÂçSocket´«ÊäÊý¾Ý£¬Ç°¶ËÒµÎñϵͳרÓÐÊý¾Ý²É¼¯API£¬¶ÔLogÎʼ۶¨Ê±¼à¿Ø¡£(×¢£ºÓÐʱºòÎÒÃǵÄÊý¾ÝÔ´ÊÇÒѾ±£´æÏÂÀ´µÄlogÎļþ£¬ÄÇSpout¾Í±ØÐë¼à¿ØLogÎļþµÄ±ä»¯£¬¼°Ê±½«±ä»¯²¿·ÖµÄÊý¾ÝÌáȡдÈëStormÖУ¬ÕâºÜÄÑ×öµ½ÍêȫʵʱÐÔ¡£)
Stormʵʱ´¦Àí²ã
Ê×ÏÈÎÒÃÇͨ¹ýÒ»¸ö Storm ºÍHadoopµÄ¶Ô±ÈÀ´Á˽âStormÖеĻù±¾¸ÅÄî¡£

(Storm¹Ø×¢µÄÊÇÊý¾Ý¶à´Î´¦ÀíÒ»´ÎдÈ룬¶øHadoop¹Ø×¢µÄÊÇÊý¾ÝÒ»´ÎдÈ룬¶à´Î´¦ÀíʹÓ㨲éѯ£©¡£StormϵͳÔËÐÐÆðÀ´ºóÊdzÖÐø²»¶ÏµÄ£¬¶øHadoopÍùÍùÖ»ÊÇÔÚÒµÎñÐèҪʱµ÷ÓÃÊý¾Ý¡£Á½Õß¹Ø×¢¼°Ó¦Óõķ½Ïò²»Ò»Ñù¡£)
1.Nimbus£º¸ºÔð×ÊÔ´·ÖÅäºÍÈÎÎñµ÷¶È¡£
2.Supervisor£º¸ºÔð½ÓÊÜnimbus·ÖÅäµÄÈÎÎñ£¬Æô¶¯ºÍÍ£Ö¹ÊôÓÚ×Ô¼º¹ÜÀíµÄworker½ø³Ì¡£
3.Worker£ºÔËÐоßÌå´¦Àí×é¼þÂß¼µÄ½ø³Ì¡£
4. Task£ºworkerÖÐÿһ¸öspout/boltµÄÏ̳߳ÆÎªÒ»¸ötask. ÔÚStorm0.8Ö®ºó£¬task²»ÔÙÓëÎïÀíÏ̶߳ÔÓ¦£¬Í¬Ò»¸öspout/boltµÄtask¿ÉÄܻṲÏíÒ»¸öÎïÀíỊ̈߳¬¸ÃÏ̳߳ÆÎªexecutor¡£

¾ßÌåÒµÎñÐèÇó£ºÌõ¼þ¹ýÂË¡¢ÖмäÖµ¼ÆËã¡¢ÇótopN¡¢ÍƼöϵͳ¡¢·Ö²¼Ê½RPC¡¢ÈȶÈͳ¼Æ
Êý¾ÝÂ䵨²ã£º
MetaQ
Èçͼ¼Ü¹¹Ëùʾ£¬StormÓëMetaQÊÇÓÐÒ»ÌõÐéÏßÏàÁ¬µÄ£¬²¿·ÖÊý¾ÝÔÚ¾¹ýʵʱ´¦ÀíÖ®ºóÐèҪдÈëMetaQÖ®ÖУ¬ÒòΪºó¶ËÒµÎñϵͳÐèÒª´ÓMetaQÖлñÈ¡Êý¾Ý¡£ÕâÑϸñÀ´Ëµ²»ËãÊÇÊý¾ÝÂ䵨£¬ÒòΪÊý¾ÝûÓÐʵʵÔÚÔÚдÈë´ÅÅÌÖг־û¯¡£
Mysql
Êý¾ÝÁ¿²»ÊǷdz£´óµÄÇé¿öÏ¿ÉÒÔʹÓÃMysql×÷ΪÊý¾ÝÂ䵨µÄ´æ´¢¶ÔÏó¡£Mysql¶ÔÊý¾ÝºóÐø´¦ÀíÒ²ÊDZȽϷ½±ãµÄ£¬ÇÒÍøÂçÉ϶ÔMysqlµÄ²Ù×÷Ò²ÊDZȽ϶àµÄ£¬ÔÚ¿ª·¢ÉÏ´ú¼Û±È½ÏС£¬ÊʺÏÖÐСÁ¿Êý¾Ý´æ´¢¡£
HDFS
HDFS¼°»ùÓÚHadoopµÄ·Ö²¼Ê½Îļþϵͳ¡£Ðí¶àÈÕÖ¾·ÖÎöϵͳ¶¼ÊÇ»ùÓÚHDFS´î½¨³öÀ´µÄ£¬ËùÒÔ¿ª·¢StormÓëHDFSµÄÊý¾ÝÂ䵨½Ó¿Ú½«ºÜÓбØÒª¡£ÀýÈ罫´óÅúÁ¿Êý¾Ýʵʱ´¦ÀíÖ®ºó´æÈëHiveÖУ¬Ìṩ¸øºó¶ËÒµÎñϵͳ½øÐд¦Àí£¬ÀýÈçÈÕÖ¾·ÖÎö£¬Êý¾ÝÍÚ¾òµÈµÈ¡£
Lustre
Lustre×÷ΪÊý¾ÝÂ䵨µÄÓ¦Óó¡¾°ÊÇ£¬Êý¾ÝÁ¿ºÜ´ó£¬ÇÒ´¦ÀíºóÄ¿µÄÊÇ×÷Ϊ¹éµµ´¦Àí¡£ÕâÖÖÇéÐΣ¬LustreÄܹ»ÎªÊý¾ÝÌṩһ¸ö±È½Ï´ó£¨Ï൱´ó£©µÄÊý¾ÝĿ¼£¬ÓÃÓÚÊý¾Ý¹éµµ±£´æ¡£
ÔªÊý¾Ý¹ÜÀíÆ÷
ÔªÊý¾Ý¹ÜÀíÆ÷µÄÉè¼ÆÄ¿µÄÊÇ£¬Õû¸öϵͳÐèÒªÒ»¸öͳһе÷µÄ×é¼þ£¬Ö¸µ¼Ç°¶ËÒµÎñϵͳµÄÊý¾ÝдÈ룬֪ͨʵʱ´¦Àí²¿·ÖÊý¾ÝÀàÐͼ°ÆäËûÊý¾ÝÃèÊö£¬¼°Ö¸µ¼Êý¾ÝÈçºÎÂ䵨¡£ÔªÊý¾Ý¹ÜÀíÆ÷¹áͨÕû¸öϵͳ£¬ÊDZȽÏÖØÒªµÄ×é³É²¿·Ö¡£ÔªÊý¾ÝÉè¼Æ¿ÉÒÔʹÓÃmysql´æ´¢ÔªÊý¾ÝÐÅÏ¢£¬½áºÏ»º´æ»úÖÆ¿ªÔ´Èí¼þÉè¼Æ¶ø³É¡£
|