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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
»ùÓÚStormµÄNginx logʵʱ¼à¿ØÏµÍ³
 
×÷Õß ÖÓ¹úÓ¢ »ðÁú¹ûÈí¼þ  ·¢²¼ÓÚ 2014-09-09
  3280  次浏览      31
 

±»ÓþΪ×î»ðµÄÁ÷ʽ´¦Àí¿ò¼Ü£¬ÃÖ²¹ÁËHadoopµÄÖÚ¶àȱµã£¬Storm¾­³£ÓÃÓÚÔÚʵʱ·ÖÎö¡¢ÔÚÏß»úÆ÷ѧϰ¡¢³ÖÐø¼ÆËã¡¢·Ö²¼Ê½Ô¶³Ìµ÷ÓúÍETLµÈÁìÓò¡£±¾ÎĽéÉܵÄÊÇ»ùÓÚStormµÄNginx logʵʱ¼à¿ØÏµÍ³¡£

HadoopµÄȱµãÒ²ºÍËüµÄÓŵãͬÑùÏÊÃ÷——ÑÓ³Ù´ó£¬ÏìÓ¦»ºÂý£¬ÔËά¸´ÔÓ¡£±»È˹ãÊÜÚ¸²¡£¬µ«ÊÇ ÓÐÐèÇó¾ÍÓд´Ô죬ÔÚHadoop»ù±¾µì¶¨ÁË´óÊý¾Ý°ÔÖ÷µØÎ»µÄʱºò£¬ºÜ¶àµÄ¿ªÔ´ÏîÄ¿¶¼ÊÇÒÔÃÖ²¹HadoopµÄʵʱÐÔΪĿ±ê¶ø±»´´Ôì³öÀ´£¬StormÕýÊÇÔÚÕâ¸öʱºòºá¿Õ³öÊÀ£¬StormÊÇÒ»¸öÃâ·Ñ¿ªÔ´¡¢·Ö²¼Ê½¡¢¸ßÈÝ´íµÄʵʱ¼ÆËãϵͳ¡£StormÁî³ÖÐø²»¶ÏµÄÁ÷¼ÆËã±äµÃÈÝÒ×£¬ÃÖ²¹ÁËHadoopÅú´¦ÀíËù²»ÄÜÂú×ãµÄʵʱҪÇó¡£

ÒÔÏÂΪԭÎÄ£º

±³¾°

UAE£¨UC App Engine£©ÊÇÒ»¸öUCÄÚ²¿µÄPaaSƽ̨£¬×ÜÌå¼Ü¹¹ÓеãÀàËÆCloudFoundry£¬°üÀ¨£º 

  1. ¿ìËÙ²¿Êð£ºÖ§³ÖNode.js¡¢Play!¡¢PHPµÈ¿ò¼Ü
  2. ÐÅϢ͸Ã÷£ºÔËά¹ý³Ì¡¢ÏµÍ³×´Ì¬¡¢ÒµÎñ×´¿ö
  3. »Ò¶ÈÊÔ´í£ºIP»Ò¶È¡¢µØÓò»Ò¶È
  4. »ù´¡·þÎñ£ºkey-value´æ´¢¡¢MySQL¸ß¿ÉÓá¢Í¼Æ¬Æ½Ì¨µÈ

ÕâÀïËü²»ÊÇÖ÷½Ç£¬²»×÷Ïêϸ½éÉÜ¡£

ÓÐÊý°Ù¸öWebÓ¦ÓÃÔËÐÐÔÚUAEÉÏ£¬ËùÓеÄÇëÇ󶼻ᾭ¹ýUAEµÄ·ÓÉ£¬Ã¿ÌìµÄNginx access log´óСÊÇTB¼¶£¬ÈçºÎʵʱ¼à¿ØÃ¿¸öÒµÎñµÄ·ÃÎÊÇ÷ÊÆ¡¢¹ã¸æÊý¾Ý¡¢Ò³ÃæºÄʱ¡¢·ÃÎÊÖÊÁ¿¡¢×Ô¶¨Ò屨±íºÍÒì³£±¨¾¯£¿

Hadoop¿ÉÒÔÂú×ãͳ¼ÆÐèÇ󣬵«Ãë¼¶µÄʵʱÐÔ²»ÄÜÂú×㣻ÓÃSpark StreamingÓÖÓÐЩ´ó²ÄСÓã¬Í¬Ê±ÎÒÃÇҲûÓÐSparkµÄ¹¤³Ì¾­Ñ飻×Ôд·Ö²¼Ê½³ÌÐòµ÷¶È±È½ÏÂé·³²¢ÇÒÒª¿¼ÂÇÀ©Õ¹¡¢ÏûÏ¢Á÷¶¯£»

×îºóÎÒÃǵļ¼ÊõÑ¡ÐͶ¨ÎªStorm£ºÏà¶ÔÇáÁ¿¡¢Áé»î¡¢ÏûÏ¢´«µÝ·½±ã¡¢À©Õ¹Áé»î¡£

ÁíÍ⣬¶øÓÉÓÚUCµÄ¸÷µØ¼¯Èº±È½Ï¶à£¬¿ç¼¯ÈºÈÕÖ¾´«ÊäÒ²»áÊÇÆäÖÐÒ»¸ö±È½Ï´óµÄÎÊÌâ¡£

¼¼Êõ×¼±¸

»ùÊý¼ÆÊý£¨Cardinality Counting£©

ÔÚ´óÊý¾Ý·Ö²¼Ê½¼ÆËãµÄʱºò£¬PV£¨Page View£©¿ÉÒԺܷ½±ãÏà¼ÓºÏ²¢£¬µ«UV£¨Unique Visitor£©²»ÄÜ¡£

·Ö²¼Ê½¼ÆËãµÄÇé¿öÏ£¬¼¸°Ù¸öÒµÎñ¡¢ÊýÊ®ÍòURLͬʱͳ¼ÆUV£¬Èç¹û»¹Òª·Öʱ¶Îͳ¼Æ(ÿ·ÖÖÓ/ÿ5·ÖÖӺϲ¢/ÿСʱºÏ²¢/ÿÌìºÏ²¢)£¬ÄÚ´æµÄÏûºÄÊDz»¿É½ÓÊܵġ£

Õâ¸öʱºò£¬¸ÅÂʵÄÁ¦Á¿¾ÍÌåÏÖÁ˳öÀ´¡£ÎÒÃÇÔÚProbabilistic Data Structures for Web Analytics and Data Mining¿ÉÒÔ¿´µ½£¬¾«È·µÄ¹þÏ£±íͳ¼ÆUVºÍ»ùÊý¼ÆÊýµÄÄÚ´æ±È½Ï£¬²¢²»ÊÇÒ»¸öÊýÁ¿¼¶µÄ¡£»ùÊý¼ÆÊý¿ÉÒÔÈÃÄãʵÏÖUVµÄºÏ²¢£¬ÄÚ´æÏûºÄ¼«Ð¡£¬²¢ÇÒÎó²îÍêÈ«ÔڿɽÓÊÜ·¶Î§ÄÚ¡£

¿ÉÒÔÏÈÁ˽âLogLog Counting£¬Àí½â¾ùÔȹþÏ£·½·¨µÄǰÌáÏ£¬´Ö²Ú¹À¼ÆµÄÀ´Óɼ´¿É£¬ºóÃæµÄ¹«Ê½ÍƵ¼¿ÉÒÔÌø¹ý¡£

¾ßÌåËã·¨ÊÇAdaptive Counting£¬Ê¹ÓõļÆËã¿âÊÇstream-2.7.0.jar¡£

ʵʱÈÕÖ¾´«Êä

ʵʱ¼ÆËã±ØÐëÒÀÀµÓÚÃë¼¶µÄʵʱÈÕÖ¾´«Ê䣬¸½¼ÓµÄºÃ´¦ÊÇ¿ÉÒÔ±ÜÃâ½×¶ÎÐÔ´«ÊäÒýÆðµÄÍøÂçÓµ¶Â¡£

ʵʱÈÕÖ¾´«ÊäÊÇUAEÒÑÓеÄÇáÁ¿¼¶µÄÈÕÖ¾´«Ê乤¾ß£¬³ÉÊìÎȶ¨£¬Ö±½ÓÄÃÀ´ÓÃÁË£¬°üÀ¨¿Í»§¶Ë£¨mca£©ºÍ·þÎñÆ÷¶Ë£¨mcs£©¡£

¿Í»§¶Ë¼àÌý¸÷¸ö¼¯ÈºµÄÈÕÖ¾ÎļþµÄ±ä»¯£¬´«Êäµ½Ö¸¶¨µÄStorm¼¯ÈºµÄ¸÷̨»úÆ÷ÉÏ£¬´æ´¢ÎªÆÕͨÈÕÖ¾Îļþ¡£

ÎÒÃǵ÷ÕûÁË´«Êä²ßÂÔ£¬Ê¹µÃÿ̨Storm»úÆ÷ÉϵÄÈÕÖ¾Îļþ´óС´óÖÂÏàͬ£¬ËùÒÔSpoutÖ»¶ÁÈ¡±¾»úÊý¾Ý¼´¿É¡£

Êý¾ÝÔ´¶ÓÁÐ

ÎÒÃDz¢Ã»ÓÐÓÃStorm³£ÓõĶÓÁУ¬ÈçKafka¡¢MetaQµÈ£¬Ö÷ÒªÊÇÌ«ÖØÁË…

fqueueÊÇÒ»¸öÇáÁ¿µÄmemcachedЭÒé¶ÓÁУ¬°ÑÆÕͨµÄÈÕÖ¾ÎļþתΪmemcachedµÄ·þÎñ£¬ÕâÑùStormµÄSpout¾Í¿ÉÒÔÖ±½ÓÒÔmemcachedЭÒéÖðÌõ¶ÁÈ¡¡£

Õâ¸öÊý¾ÝÔ´±È½Ï¼òµ¥£¬Ëü²»Ö§³ÖÖØÐ·¢É䣨replay£©£¬Ò»Ìõ¼Ç¼±»È¡³öÖ®ºó¾Í²»¸´´æÔÚ£¬Èç¹ûij¸ötuple´¦Àíʧ°Ü»ò³¬Ê±£¬ÔòÊý¾Ý¶ªÊ§¡£

Ëü±È½ÏÇáÁ¿£¬»ùÓÚ±¾µØÎļþ¶ÁÈ¡£¬×öÁËÒ»²ã±¡µÄ»º´æ£¬²¢²»ÊÇÒ»¸ö´¿ÄÚ´æµÄ¶ÓÁУ¬ËüµÄÐÔÄÜÆ¿¾±ÔÚÓÚ´ÅÅÌIO£¬Ã¿ÃëÍÌÍÂÁ¿¸ú´ÅÅ̶ÁÈ¡ËÙ¶ÈÊÇÒ»Öµġ£µ«¶ÔÓÚÎÒÃÇÕâ¸öϵͳÒѾ­×ã¹»£¬ºóÐøÓмƻ®¸Ä³É´¿ÄÚ´æ¶ÓÁС£

¼Ü¹¹

ͨ¹ýÉÏÃæµÄ¼¼Êõ´¢±¸£¬ÎÒÃÇ¿ÉÒÔÔÚÓû§·ÃÎʼ¸Ãëºó¾ÍÄÜ»ñÈ¡µ½Óû§µÄÈÕÖ¾¡£

ÕûÌå¼Ü¹¹Ò²±È½Ï¼òµ¥£¬Ö®ËùÒÔÓÐÁ½ÖÖ¼ÆËãbolt£¬ÊÇ»ùÓÚ¼ÆËãµÄ¾ùÔÈ·Ö²¼¿¼ÂÇ¡£ÒµÎñµÄÁ¿Ïà²î¼«´ó£¬Èç¹û½ö°´ÒµÎñIDÈ¥½øÐÐfieldsGrouping£¬¼ÆËã×ÊÔ´Ò²»á²»¾ùºâ¡£

  1. spout½«Ã¿ÌõԭʼÈÕÖ¾±ê×¼»¯£¬°´ÕÕURL·Ö×飨fieldsGrouping£¬Îª±£³Öÿ̨·þÎñÆ÷¼ÆËãÁ¿µÄ¾ùÔÈ£©£¬ÅÉ·¢µ½¶ÔÓ¦µÄstat_boltÉÏ£»
  2. stat_boltÊÇÖ÷ÒªµÄ¼ÆËãBolt£¬½«Ã¿¸öÒµÎñµÄURLÊáÀí²¢¼ÆË㣬ÈçPV¡¢UV¡¢×ÜÏìӦʱ¼ä¡¢ºó¶ËÏìӦʱ¼ä¡¢HTTP״̬Âëͳ¼Æ¡¢URLÅÅÐò¡¢Á÷Á¿Í³¼ÆµÈ£»
  3. merge_bolt½«Ã¿¸öÒµÎñµÄÊý¾ÝºÏ²¢£¬ÈçPVÊý£¬UVÊýµÈ¡£µ±È»£¬ÕâÀïµÄUVºÏ²¢¾ÍÓõ½ÁËÇ°ÃæÌáµ½µÄ»ùÊý¼ÆÊý£»
  4. ×ÔдÁËÒ»¸ö¼òµ¥µÄCoordinatorЭµ÷À࣬streamId±ê¼ÇΪ”coordinator”£¬×÷ÓãºÊ±¼äЭµ÷£¨ÇзÖbatch£©¡¢¼ì²éÈÎÎñÍê³É¶È¡¢³¬Ê±´¦Àí¡£Ô­Àí¸úStorm×Ô´øµÄTransactional TopolgoyÀàËÆ¡£
  5. ʵÏÖÒ»¸öSchedulerͨ¹ýAPI»ñÈ¡²ÎÊý£¬¶¯Ì¬µ÷ÕûSpout¡¢BoltÔÚ¸÷·þÎñÆ÷µÄ·Ö²¼£¬ÒÔ±ãÁé»î·ÖÅä·þÎñÆ÷×ÊÔ´¡£
  6. Ö§³Öƽ»¬Éý¼¶Topology£ºµ±Ò»¸öTopologyÉý¼¶µÄʱºò£¬ÐÂTopologyºÍ¾ÉTopology½²Í¬Ê±ÔËÐУ¬Ð­µ÷Çл»Ê±¼ä£¬µ±ÐµÄTopology½Ó¹ÜÁËfqueueÖ®ºó£¬¹ýºÓ²ðÇÅ£¬É±ËÀ¾ÉµÄTopology¡£

×¢Òâµã£º

  • Storm»úÆ÷¾¡Á¿²¿ÊðÔÚͬһ¸ö»ú¹ñÄÚ£¬²»Ó°Ï켯ȺÄڵĴø¿í£»
  • ÎÒÃǵÄNginxÈÕÖ¾Êǰ´Ð¡Ê±Çзֵģ¬Èç¹ûÇзֵÄʱ¼ä²»×¼È·£¬ÔÚ00·ÖµÄʱºò£¬¾Í¿ÉÒÔ¿´µ½Ã÷ÏÔµÄÊý¾Ý²¨¶¯£¬ËùÒÔ£¬¾¡Á¿Ê¹ÓÃNginx moduleÈ¥ÇÐÈÕÖ¾£¬ÓÃcrontab·¢ÐźÅÇлáÓÐÑÓ³Ù¡£ÇÐÈÕÖ¾ÕâÖÖ10Ãë¼¶µÄÑÓ³Ù£¬ÔÚ´ó³ß¶ÈµÄͳ¼ÆÉÏûÓÐÎÊÌ⣬Ãë¼¶µÄͳ¼ÆÊ±²¨¶¯È´ºÜÃ÷ÏÔ£»
  • ¶Ñ̫С»áµ¼ÖÂwoker±»Ç¿ÖÆÉ±ËÀ£¬ËùÒÔÒªÅäÖúÃ-Xmx²ÎÊý£»

×Ô¶¨ÒåÏî

  • ¾²Ì¬×ÊÔ´£º¾²Ì¬×ÊÔ´¹ýÂËÑ¡Ïͨ¹ýContent-Type»òºó×ºÉ¸Ñ¡ÌØ¶¨µÄ¾²Ì¬×ÊÔ´¡£
  • ×ÊÔ´ºÏ²¢£ºURLºÏ²¢£¬±ÈÈçRESTfulµÄ×ÊÔ´£¬ºÏ²¢ºó·½±ãչʾ£»
  • ά¶ÈÓëÖ¸±ê£ºÍ¨¹ýANTLR v3×öÓï·¨¡¢´Ê·¨·ÖÎö£¬Íê³É×Ô¶¨Òåά¶ÈºÍÖ¸±ê£¬²¢ÇÒºóÐøµÄ±¨¾¯Ò²Ö§³Ö×Ô¶¨Òå±í´ïʽ¡£

ÆäËû

ÎÒÃÇ»¹ÓÃÆäËû·½Ê½ÊµÏÖÁË£º

  • ÒµÎñµÄ½ø³Ì¼¶£¨CPU/MEM/¶Ë¿Ú£©¼à¿Ø
  • ÒµÎñÒÀÀµµÄ·þÎñ£¬ÈçMySQL/memcachedµÈµÄ¼à¿Ø
  • ·þÎñÆ÷µÄ´ÅÅÌ/ÄÚ´æ/IO/Äں˲ÎÊý/ÓïÑÔ»·¾³/»·¾³±äÁ¿/±àÒë»·¾³µÈ¼à¿Ø
   
3280 ´Îä¯ÀÀ       31
Ïà¹ØÎÄÕÂ

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

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

Êý¾ÝÖÎÀí¡¢Êý¾Ý¼Ü¹¹¼°Êý¾Ý±ê×¼
MongoDBʵս¿Î³Ì
²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
PostgreSQLÊý¾Ý¿âʵսÅàѵ
×îл¼Æ»®
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢ 6-12[ÏÃÃÅ]
È˹¤ÖÇÄÜ.»úÆ÷ѧϰTensorFlow 6-22[Ö±²¥]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 6-30[±±¾©]
ǶÈëʽÈí¼þ¼Ü¹¹-¸ß¼¶Êµ¼ù 7-9[±±¾©]
Óû§ÌåÑé¡¢Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À 7-25[Î÷°²]
ͼÊý¾Ý¿âÓë֪ʶͼÆ× 8-23[±±¾©]

MySQLË÷Òý±³ºóµÄÊý¾Ý½á¹¹
MySQLÐÔÄܵ÷ÓÅÓë¼Ü¹¹Éè¼Æ
SQL ServerÊý¾Ý¿â±¸·ÝÓë»Ö¸´
ÈÃÊý¾Ý¿â·ÉÆðÀ´ 10´óDB2ÓÅ»¯
oracleµÄÁÙʱ±í¿Õ¼äдÂú´ÅÅÌ
Êý¾Ý¿âµÄ¿çƽ̨Éè¼Æ


²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿â
¸ß¼¶Êý¾Ý¿â¼Ü¹¹Éè¼ÆÊ¦
HadoopÔ­ÀíÓëʵ¼ù
Oracle Êý¾Ý²Ö¿â
Êý¾Ý²Ö¿âºÍÊý¾ÝÍÚ¾ò
OracleÊý¾Ý¿â¿ª·¢Óë¹ÜÀí


GE Çø¿éÁ´¼¼ÊõÓëʵÏÖÅàѵ
º½Ìì¿Æ¹¤Ä³×Ó¹«Ë¾ Nodejs¸ß¼¶Ó¦Óÿª·¢
ÖÐÊ¢Òæ»ª ׿Խ¹ÜÀíÕß±ØÐë¾ß±¸µÄÎåÏîÄÜÁ¦
ijÐÅÏ¢¼¼Êõ¹«Ë¾ PythonÅàѵ
ij²©²ÊITϵͳ³§ÉÌ Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À
ÖйúÓÊ´¢ÒøÐÐ ²âÊÔ³ÉÊì¶ÈÄ£Ðͼ¯³É(TMMI)
ÖÐÎïÔº ²úÆ·¾­ÀíÓë²úÆ·¹ÜÀí