Google
ºÍ
Amazon
µÈ³¬´ó¹æÄ£µÄ»¥ÁªÍø¹«Ë¾£¬
Ëæ×ÅÕâЩ¹«Ë¾ÒµÎñµÄ³É¹¦£¬
×÷ΪÆäÖ§³Å¼¼ÊõµÄÔÆ¼ÆËãÒ²µÃµ½ÁËÒµ½çµÄ¸ß¶ÈÈϿɺ͹㷺´«²¥¡£
ʱÖÁ½ñÈÕ£¬
ÔÆ¼ÆËãÒѱ»ÆÕ±é
ÈÏΪÊÇ
IT
²úÒµ·¢Õ¹µÄн׶Σ¬´Ó¶ø±»¸³ÓèÁ˺ܶà²úÒµºÍ²úÆ·²ãÃæµÄÒâÒå¡£ÓÉÓÚÒâÒå¶àÖØ£¬
¸÷ÖÖ¸ÅÄî·×·±¸´ÔÓ£¬Öڶ๫˾ºÍ´ÓÒµÈËÔ±µÄÑÛÖж¼ÓÐ×Ô¼ºµÄÒ»¶äÔÆ£¬ÕýÈçÐì־ĦÔÚ¡¶Å¼È»¡·
һʫÖÐËù˵£º¡°ÎÒÊÇÌì¿ÕÀïµÄÒ»Æ¬ÔÆ£¬Å¼¶ûͶӰÔÚÄãµÄ²¨ÐÄ¡±¡£
´«Í³µÄϵͳÉè¼Æ¿¼ÂǵÄÖ÷ÒªÊǵ¥»ú»·¾³£¬
¶øÔƼÆËãÖ÷Òª¿¼ÂǵĻ·¾³È´ÊÇÊý¾ÝÖÐÐÄ¡£
´Óµ¥»úµ½
Êý¾ÝÖÐÐÄ£¬ºÜ¶àÉè¼ÆÔÔò·¢ÉúÁ˸ù±¾±ä»¯£¬¼«¶ËµãÉõÖÁ¿ÉÒÔ˵
PC
ʱ´ú
30
ÄêÀ´Ò»ÒÔ¹áÖ®µÄ
ϵͳÉè¼ÆÔÔòµ½½ñÌìÒÑÍêÈ«²»ÊÊÓá£
¿¼Âǵ½ÔƼÆËãµÄÖî¶àÄÚº£¬´Ó¼¼Êõ½Ç¶È½²£¬Êý¾ÝÖÐÐļÆËã
£¨
Datacenter Computing
£©¿ÉÄÜÊÇ
¸üºÏÊʵıíÊö¡£
±¾ÎĶÔÊý¾ÝÖÐÐļÆËãµÄ¼¼ÊõÁìÓòºÍÉè¼ÆÔÔòµÄ±ä»¯½øÐÐÁË´ÖdzµÄ̽ÌÖ¡£
Ò»¼Ò
Ö®¼û£¬½ö¹©²Î¿¼¡£
ÔÆ¼ÆËã¼ò½é
´Ó
20
ÊÀ¼Í
80
Äê´ú¸öÈ˵çÄԵķ¢Õ¹¿ªÊ¼£¬
PC
µÄ¼ÆËãÄÜÁ¦²»¶ÏÔöÇ¿£¬ÓÃһ̨
PC
¾Í¿ÉÒÔ´æ·Å
¸öÈËÐèÒªµÄËùÓÐÊý¾Ý²¢Íê³É´¦Àí¹¤×÷£¬
±ÈÈç±àдÎĵµ¡¢
´¦ÀíÓʼþµÈ¡£
µ«ÔÚ»¥ÁªÍøÊ±´ú£¬
Ò»¼Ò
»¥ÁªÍø¹«Ë¾Ìṩ·þÎñʱÐèÒªÓõ½Ô¶³¬¹ý¸öÈ˹æÄ£µÄÊý¾Ý£¬
ÕâЩÊý¾ÝµÄ´æ´¢ºÍ´¦ÀíÐèÒª³ÉǧÉÏ
Íǫ̀»úÆ÷µÄÐͬ¹¤×÷²ÅÄÜÍê³É¡£
ÕâÖÖ·þÎñÆ÷¹æÄ£²»ÊǸöÈËÄܹ»ÌṩµÄ£¬
Ö»ÓдóÐ͹«Ë¾»ò»ú¹¹
²ÅÄÜÓµÓУ¬ÕâºÃÏñÓֻص½Á˸üÔçÒÔǰµÄ
Mainframe
ʱ´ú¡£´Ó
Mainframe
µ½
PC
ÔÙµ½ÔÆ£¬ÕâÕý
ÊǼÆËã»ú¼¼ÊõÂÝÐýÉÏÉýµÄ·¢Õ¹¹ý³Ì¡£
¼òµ¥À´Ëµ£¬
ÔÆ¼ÆËã¾ÍÊÇÀûÓÃϵͳ¼Ü¹¹¼¼Êõ°Ñ³ÉǧÉÏÍǫ̀·þÎñÆ÷ÕûºÏÆðÀ´£¬
ΪÓû§ÌṩÁé»îµÄ
×ÊÔ´·ÖÅäºÍÈÎÎñµ÷¶ÈÄÜÁ¦¡£
ÕâÀïÓм¸¸ö¹Ø¼ü×Ö£º
Ò»Êdz¬´ó¹æÄ££¬
°üÀ¨»úÆ÷µÄÊýÁ¿¡¢
Óû§µÄÊý
Á¿ºÍ²¢·¢ÈÎÎñµÄÊýÁ¿£»
¶þÊÇ×ÊÔ´ÕûºÏ£¬
³ÉǧÉÏÍǫ̀µÄ·þÎñÆ÷×ÊÔ´Äܼ¯ºÏÆðÀ´×öÒ»¼þÊÂÇ飬
±È
Èç´æ´¢´óÁ¿Êý¾Ý£¬
»òÕß´¦ÀíÒ»¸ö´óÐÍÈÎÎñ£»
ÈýÊÇÁé»îÓë¿ìËÙ½»¸¶£¬
´ó¹æÄ£µÄ·þÎñÆ÷×ÊÔ´Äܽø
ÐÐÁé»îµÄµ÷Å䣬
°´Ó¦ÓÃÐèÇó·Ö½â³ÉÈô¸É¸öÐéÄâµÄ×ÊÔ´³Ø£¬
¿ìËÙµØÖ§³Ö´óÁ¿µÄ²¢·¢ÇëÇó»ò×÷Òµ¡£
ÔÆ¼ÆËã¼¼ÊõµÄ³ö
ÏÖ£¬Ê¹ÕûÀíºÍ¼Ó¹¤Êý¾ÝµÄÄÜÁ¦±äµÃ¿Õǰǿ´ó£¬ÕâÖÖÄÜÁ¦¿ÉÒÔ°ïÎÒÃÇÕÒ³öºÜ
¶à¿´ËÆÎ޹صÄʼþ±³ºóµÄ¹æÂÉ£¬
²¢ÓÃÆäÀ´Ô¤²âδÀ´·¢Õ¹¡£
½áºÏÒÆ¶¯ºÍÎïÁªÍøµÈ¼¼Êõ£¬
»¹¿ÉÒÔ
¸üºÃµØ·þÎñÓÚÉç»áºÍÈËÃǵÄÈÕ³£Éú»î£¬
ÈçÔÖÄÑÔ¤¾¯¡¢
Öǻ۳ÇÊкÍÖÇÄܽ»Í¨µÈ¡£
ÕâÖÖÊý¾Ý´¦Àí
ÄÜÁ¦ÊÇÔÚº£Á¿Êý¾ÝÖ®ÉÏ·¢Õ¹ÆðÀ´µÄ£¬
Óë×÷Ϊ»ù´¡Ö§³ÅµÄϵͳ¼Ü¹¹¼¼Êõͬ²½
·¢Õ¹²¢Öð½¥Èںϣ¬
¹²Í¬×é³ÉÁËÏÖÔÚ´ó¼ÒËù¿´µ½µÄÔÆ¼ÆËã¼¼Êõ¡£
×ÛºÏϵͳ¼Ü¹¹ºÍÊý¾Ý´¦Àí¼¼ÊõÁ½·½Ã棬
ÔÆ¼ÆËã¼¼Êõ×Ô϶øÉϿɷÖΪӲ¼þ»ù´¡¼Ü¹¹¡¢
Èí¼þ»ù´¡
¼Ü¹¹ºÍÊý¾ÝÖÇÄÜÈý¸ö²ãÃæ£¬Èçͼ
1
Ëùʾ¡£
ͼ
1
ÔÆ¼ÆËã¼¼Êõ¿É·ÖΪÈý¸ö²ãÃæ
Ó²¼þ»ù´¡¼Ü¹¹°üÀ¨·þÎñÆ÷¡¢
ÍøÂçºÍÊý¾ÝÖÐÐĵÄÉè¼ÆÓëʵʩµÈ¼¼ÊõÁìÓò£¬
Èí¼þ»ù´¡¼Ü¹¹¾Û½¹ÓÚ
´æ´¢¡¢
¼ÆËãÓë´ó¹æÄ£·Ö²¼Ê½ÏµÍ³µÈ¼¼ÊõÁìÓò£¬
Êý¾ÝÖÇÄÜÔò¹Ø×¢Êý¾Ý²Ö¿â
£¨
Data Warehouse
£©
¡¢
»úÆ÷ѧϰ£¨
Machine Learning
£©¼°Êý¾Ý·ÖÎöÓë¿ÉÊÓ»¯£¨
Data Analysis & Visualization
£©µÈ¼¼Êõ
ÁìÓò¡£
ÖµµÃÒ»ÌáµÄÊÇ£¬
ÕâÈý¸ö²ã´ÎµÄ»®·ÖÖ÷ÒªÒÔ¼¼ÊõÁìÓòΪ³ö·¢µã£¬
¶øÍ¨³£Ìáµ½µÄÔÆ¼ÆËãÈý
¸ö²ã´Î
SaaS/PaaS/IaaS
Ôò¸ü¶àµØÊÇ´Ó×ÊÔ´µÄÌṩÐÎ̬ºÍ½Ó¿ÚΪ¿¼ÂǽøÐл®·ÖµÄ£¬
¶þÕß²¢·Çͬ
һά¶È¡£
ʱÏÂÁ÷ÐеĴóÊý¾Ý£¨
Big Data
£©¸ÅÄî¿ÉÒÔ¿´³É´Óº£Á¿Êý¾ÝµÄ½Ç¶È¿´Êý¾Ý·ÖÎö¼¼ÊõºÍÈí¼þ¼Ü¹¹
Ö§³Å£¬
°üÀ¨Èí¼þ»ù´¡¼Ü¹¹ÓëÊý¾ÝÖÇÄÜÏà¹Ø¼¼Êõ¡£
¶þÕß¶¼ÓëÊý¾ÝÓйأ¬
µ«ÆäÇø±ðÔÚÓÚ£º
Èí¼þ»ù
´¡¼Ü¹¹¹ØÐĵÄÖ÷ÒªÊÇÊý¾ÝµÄ¸ñʽ¡¢ÈÝÁ¿ÒÔ¼°·ÃÎÊģʽµÈ£¬¶øÊý¾ÝÖÇÄܸüÔÚÒâÊý¾ÝµÄÓïÒå¡£
¶øÊý¾ÝÖÐÐļÆËãÔòÊÇ´ÓÌåϵ½á¹¹µÄ½Ç¶È¿´´ýÈíÓ²¼þϵͳÉè¼Æ¡£
ÏÂÎĽ«¾ÍÏà¹ØµÄ¼¼ÊõÁìÓòºÍÉè
¼ÆÔÔò½øÐÐÌÖÂÛ¡£
Êý¾ÝÖÐÐļÆËã
¼¼ÊõÁìÓòÓëÌôÕ½
Èçͼ
2
Ëùʾ£¬Êý¾ÝÖÐÐļÆËã°üº¬´æ´¢¡¢¼ÆË㡢ʵʱ´æ´¢Óë¼ÆËã¡¢³¬´ó¹æÄ£ÏµÍ³¡¢Ìåϵ½á¹¹ÒÔ
¼°Êý¾ÝÖÐÐĵȼ¼ÊõÁìÓò¡£´æ´¢ÏµÍ³µÄÐèÇóÀ´×ÔÁ½¸öά¶È¡£Ê×ÏÈ£¬´óÁ¿µÄÎ޽ṹÊý¾ÝÐèÒª±í
£¨
Table
£©¡¢¶ÔÏó£¨
Object
£©ÓëÎļþ£¨
File
£©µÈ¶àÖÖ´æ´¢½á¹¹½øÐÐÖ§³Ö£»Æä´Î£¬·ÃÎÊģʽµÄ²»
ͬ
£¨ÈçÖ»¶Á²»Ð´¡¢
ֻдÉÙ¶Á¡¢
¶Áд¾ùÔȵȣ©
½«ºÜ´ó³Ì¶ÈÉÏÓ°Ïì¶Ô´æ´¢ÏµÍ³Éè¼ÆºÍÓÅ»¯µÄ¿¼ÂÇ¡£
ͼ
2
Êý¾ÝÖÐÐÄËù°üº¬µÄ¼¼ÊõÁìÓò
¼ÆËãϵͳµÄÐèÇóºÍ¼¼ÊõÌØµãÓë¼ÆËãÈÎÎñµÄÀàÐÍÓкܴó¹ØÏµ¡£
Êý¾ÝÃܼ¯Ð͵Ĵú±íÊÇ
MapReduce
£¬
Ëü¶Ô
CPU
ºÍ
I/O
µÄÐèÇó±È½Ï¾ùºâ¡£¼ÆËãÃܼ¯ÐÍÈÎÎñÓëͨÐÅÃܼ¯ÐÍÈÎÎñ¶¼ÊÇ
CPU
Ãܼ¯¼ÆË㣬
µ«¶þÕß·ÃÎÊÊý¾ÝµÄ¹æÄ£²»Í¬¡£
Èç¹ûÖ»ÐèÒªÉÙÁ¿Êý¾ÝÔòÊǼÆËãÃܼ¯ÐÍ¡£
¶øÈç¹ûÐèÒª·ÃÎÊ´óÁ¿Êý
¾Ý£¬
±ÈÈç´ó¾ØÕóµü´ú£¬
ÄÚ´æÏÞÖÆÕâЩÊý¾Ý±ØÐë´æ·ÅÔÚ¶ą̀»úÆ÷ÉÏ£¬
ÄÇôÍùÍù´Ëʱϵͳƿ¾±½«
×ªÒÆµ½Í¨ÐŵÄÑÓ³ÙÉÏ£¬ÕâÀàËÆÓÚ´«Í³µÄ¸ßÐÔÄܼÆËã¡£
ͨ³£µÄ´æ´¢ÏµÍ³ºÍ¼ÆËãϵͳֻÄÜÖ§³Öµ½Ò»¶¨¼¶±ðµÄÑӳٺͲ¢·¢¶È£¬
¶ÔÓÚ¸ü¸ßµÄÒªÇóÔòÐèÒª»ù
ÓÚÄÚ´æ¹¹ÔìʵʱµÄ´æ´¢Óë¼ÆËãϵͳ¡£
¿¼Âǵ½ÄÚ´æµÄÌØµã£¬
ÔÚ´æ´¢ÉϸüÊʺÏÌṩ¾ßÓзḻÓïÒå
µÄÊý¾Ý½á¹¹¡£
ÔÚ·Ö²¼Ê½Êý¾Ý½á¹¹µÄ»ù´¡ÉÏ£¬
¼ÓÈëÁ÷ʽÊý¾Ý´¦ÀíºÍ´¥·¢Ê½Ê¼þ´¦ÀíµÄÄ£ÐÍ£¬
Ôò
¿ÉÒÔ¸üºÃµØÖ§³Öʵʱ¼ìË÷¡¢
OLAP
¡¢
PubSub
µÈÓ¦Óá£
³¬´ó¹æÄ£ÏµÍ³Ö÷Ҫͨ¹ý·Ö²¼Ê½Ïà¹Ø¼¼Êõ±£Ö¤ÏµÍ³µÄ¿ÉÓÃÐÔ£¨
availability
£©ºÍ¿É¹ÜÀí
ÐÔ
£¨
manageability
£©£¬°üÀ¨ÏµÍ³½¨Ä£¡¢Éè¼Æ¡¢¿ª·¢ÒÔ¼°ÔËάµÈ¶à·½Ãæ¡£Ìåϵ½á¹¹°üÀ¨ÐéÄâ
»ú¡¢·þÎñÆ÷Éè¼ÆµÈ¡£Êý¾ÝÖÐÐİüÀ¨»ú¹ñÉè¼Æ¡¢ÍøÂç¹æ»®ÓëÉè¼Æ¡¢Êý¾ÝÖÐÐÄÉè¼ÆÓ뽨ÉèµÈ£¬Ö÷
Òª¹Ø×¢ÓÚÄÜЧ±È£¨
PUE
£©¡£
ϵͳÉè¼ÆÔÔò
´«Í³µÄÈíÓ²¼þϵͳÖ÷ÒªÃæÏòµ¥»úºÍ¸öÈË£¬ÔÚ×ÀÃæ»·¾³ÖÐʹÓã¬ÎÒÃÇÒ²¿ÉÒÔ³ÆÆäΪ×ÀÃæ¼ÆËã
£¨
Desktop Computing
£©¡£´Ó×ÀÃæµ½Êý¾ÝÖÐÐÄ£¬Ó¦ÓÃÌØµãºÍ¸ºÔØÄ£ÐÍ·¢ÉúÁ˾޴ó±ä»¯¡£
ÔÚµ¥»úÉÏ£¬
Ö÷ÒªÃæÏòÒ»¸öÓû§£¬
Ëû¿ÉÄÜÔËÐжàÏîÈÎÎñ£¬
ÈÎÎñ¿ÉÒÔ·ÖΪǰ̨ÈÎÎñºÍºǫ́ÈÎÎñÁ½
ÖÖ¡£Óû§¶ÔϵͳµÄÏìÓ¦ÐÔ£¨
promptness
»ò
responsiveness
£©Ê®·ÖÃô¸Ð£¬ËùÒÔǰ̨ÈÎÎñͨ³£ÓÅ
ÏÈÓÚºǫ́ÈÎÎñ£¬
¶øºǫ́ÈÎÎñÔòÏ£Íû±»¹«Æ½µ÷¶È¡£
ÕâÒ²ÊÇÇÀռʽµ÷¶È
£¨
Preemptive Scheduling
£©
²ßÂÔ×îÖÕʤ¹ýÐ×÷ʽµ÷¶È£¨
Cooperative Scheduling
£©µÄÔÒò¡£
ÔÚÊý¾ÝÖÐÐÄÀ
ͬÑùÒ²ÓÐÔÚÏߺÍÀëÏßÁ½ÖÖÓ¦ÓÃÀàÐÍ£¬
ÔÚÏßϵͳֱ½ÓÃæÏòÓû§£¬
¶øÀëÏßϵͳ¶à
ÓÃÓÚÊý¾Ý´¦Àí¡£
ÔÚÏßϵͳͨ³£ÊÇÒ»¸ö´óÐÍÓ¦Ó÷þÎñÓÚº£Á¿Óû§£¬
Óû§¶ÔϵͳÏìÓ¦ÐÔÈÔȻʮ·Ö
Ãô¸Ð¡£
µ«ÓÉÓÚÓû§¹æÄ£¾Þ´óÒÔ¼°»¥ÁªÍø·þÎñͨ³£Ãâ·Ñ£¬
³É±¾Ñ¹Á¦Ê®·ÖÑϾþ£¬
ËùÒÔϵͳÐèÒª³ä
·ÖÍÚ¾òÓû§¶ÔÏìÓ¦ÐÔµÄÈÝÈ̶ȡ£Í¨³£Çé¿öÏ£¬È˶ÔʼþÏìÓ¦µÄ¸ÐÖªÄÜÁ¦ÔÚ
500ms
×óÓÒ£¬Àû
ÓÃÕâÒ»ÌØµã¿ÉÒÔÓÅ»¯ÏµÍ³µ÷¶È²¢½ÚÊ¡×ÊÔ´¡£
¶øÔÚ¼«ÏÞѹÁ¦Çé¿öÏ£¬
ûÓÐ×ã¹»µÄ×ÊÔ´Âú×ãËùÓÐ
ÇëÇó£¬
ºÜ¶àϵͳ¿ªÊ¼ÑÓ³¤ÏìӦʱ¼ä£¬
È»ºóÔÚ³ÖÐøÑ¹Á¦ÏÂʧȥÏìÓ¦Ö±ÖÁ±ÀÀ£¡£
´Ëʱ£¬
Ϊ¿É·þÎñ
·¶Î§ÄÚµÄÇëÇóÌṩÕý³£·þÎñ£¬
²¢Îª³¬¹ý·¶Î§µÄÇëÇóÌṩ¿ìËٵľܾøÏìÓ¦£¬
½«»á¸øÓû§´øÀ´¸ü
ºÃµÄÌåÑ飬
Ò²ÄÜÌáÉýϵͳµÄ¿ÉÓÃÐÔ¡£
µ½×îºó£¬
ÎÒÃǻᷢÏÖÔÚÏß·þÎñϵͳӦÒÔÎȶ¨µÄ¼«ÏÞÍÌÍÂ
£¨
Sustained Throughput
£©×÷ΪÊ×ÒªÉè¼ÆÄ¿±ê¡£µ±È»£¬ÒªÔÚÒ»¶¨ÑÓ³ÙãÐÖµµÄǰÌᱣ֤ϡ£
ÀëÏßϵͳÖ÷Òª·þÎñÓÚÊý¾Ý´¦ÀíÀà×÷Òµ£¬
ÕâЩ×÷񵃾¼°º£Á¿Êý¾Ý£¬
ʹÓÃÕßµÄÔ¤ÆÚ²¢²»»áÌØ±ð¸ß£¬
´ËʱµÄ´¦ÀíЧÂʸüÎªÖØÒª¡£
ͨ³££¬
ÕâЩ×÷Òµ½«»áÒÔÅú´¦ÀíµÄ·½Ê½ºÏ²¢Ö´ÐУ¬
ÌáÉýϵͳµÄ×ÜÍÌ
ÍÂÂÊ£¬¼´×ÊÔ´ÀûÓÃÂʳÉΪÊ×Òªµ÷¶ÈÄ¿±ê¡£
ÔÚϵͳÉè¼ÆÊ±£¬
ÓÐһЩÓÀºãµÄì¶ÜÐèÒª×ö³öÕÛÖп¼ÂÇ£¬
ÀýÈçÑÓ³ÙÓëÍÌÍ¡¢
¹«Æ½ÓëЧÂÊ¡£
ÔÚ×À
Ãæ»·¾³ÖУ¬
ÎÒÃÇÑ¡ÔñÁ˵ÍÑӳٺ͹«Æ½£¬
¶øÔÚÊý¾ÝÖÐÐÄ»·¾³ÖУ¬
ÎÒÃÇÑ¡ÔñÁ˸ßÍÌÍÂ
£¨»òÎȶ¨µÄ
¼«ÏÞÍÌÍ£©ºÍ¸ßЧÂÊ¡£ÔÚ¾ßÌåʵÏÖ·½°¸ÉÏ£¬Ò²´øÀ´Á˲»Í¬µÄÑ¡Ôñ£¬±ÈÈçͬ²½ÓëÒ첽ģÐÍ¡¢Ïß
³ÌÓëʼþÇý¶¯¡¢Ï̳߳ØÓë¶ÓÁеȡ£
´Ó×ÀÃæµ½Êý¾ÝÖÐÐÄ£¬Í¬Ñù·¢Éú±ä»¯µÄ»¹Óпª·¢Ä£Ê½¡£
PC
ÊÇÒ»¸ö¿ª·Åϵͳ£¬ÎÞÂÛÈí¼þ»¹ÊÇÓ²
¼þ£¬
ÿ¸ö³§É̶¼Ö»¸ºÔðϵͳÖеÄÒ»²¿·Ö£¬
¶¼ÐèÒª¿¼ÂǺͲ»Í¬µÄ×é¼þÒ»Æð¹¤×÷¡£
ÓÉÓÚÓû§Öڶ࣬
ÐèÇó¸÷²»Ïàͬ£¬
Ö»ÄܲÉÈ¡°´²ã´Î×éÖ¯µÄϵͳ¼Ü¹¹
£¨
layered architecture
£©
ÒÔ¼°Ô¼¶¨Ë׳ɵıê×¼
»¯¹æ·¶¡£
ÕâËäÈ»±£Ö¤ÁËϵͳµÄͨÓÃÐÔ£¬
ÒÔ¼°²»Í¬À´Ô´µÄ¸÷ÖÖ×é¼þµÄÓÐЧ·Ö¹¤ºÍÐͬ¹¤×÷£¬
µ«
Ò²´øÀ´ÁËһЩÎÊÌ⣬
ÀýÈçÒ»¸ö¹¦ÄÜÐèÒª´©Í¸¶à²ã²ÅÄÜÍê³É£¬
¶øÃ¿²ã»¥²»ÐÅÈΣ¬
ÐèÒªÖ´ÐÐÑϸñ
µÄ²ÎÊý¼ì²éµÈ¡£
¸üÑÏÖØµÄÊÇ£¬
ÔÚϵͳµÄÿһ²ãÖУ¬
¶¼¿ÉÄÜ´æÔÚÒ»Ð©ÖØ¸´µÄ¹¦ÄÜ¡£
ÒԴ洢ΪÀý£¬
Ò»´ÎдÈëÐèÒª
¾Àú´Ó
libc
µÄÎļþÁ÷£¨
FILE stream
£©
£¬µ½ÎļþϵͳµÄ»º³åÇø£¬ÔÙµ½Çý¶¯Æ÷ÖеĻº³åÇø£¬×îºó
µ½´ÅÅÌÉϵĻº´æÕâÑùµÄ³¤µ÷ÓÃÁ÷³Ì²ÅÄÜÍê³É³Ö¾Ã»¯£¨
persistency
£©¡£Õâ¸öÁ÷³Ì´ÓÆäÖеÄÿһ
²ãµ¥¶ÀÀ´¿´¶¼ÊǺÏÀíµÄ£¬
µ«´ÓÕû¸öϵͳµÄ½Ç¶È¿´À´£¬
´æÔÚ×ÅÐÔÄÜÀË·Ñ¡£
ÁíÍ⣬
ÓÉÓÚ·Ö²ã´øÀ´
µÄ͸Ã÷ÐÔʹµÃÊý¾Ý³Ö¾Ã»¯²»µÃ²»Í¨¹ý¶îÍâµÄ
fsync
²Ù×÷²ÅµÃÒÔ±£Ö¤£¬
´Ó¶øÊ¹ÏµÍ³µÄ¿É¿¿ÐÔ±£
Ö¤»úÖÆ±äµÃ¸ü¸´ÔÓ¡£
´ËÍ⣬Ôڼܹ¹Éè¼ÆÊ±£¬ÎÒÃÇÒ²¾³£ÔÚ̸»úÖÆ£¨
mechanism
£©Óë²ßÂÔ£¨
policy
£©µÄ·ÖÀë¡£¹Ì¶¨¡¢
Ã÷È·µÄ¹¦ÄܳÆÎª»úÖÆ£¬Í¨¹ýÁé»îµÄ¿É±äµÄ²ßÂÔ½øÐÐÅäÖ㬴ӶøÊ¹ÏµÍ³¾ßÓÐÁ¼ºÃµÄ¿ÉÀ©Õ¹ÐÔ¡£
µ«Êµ¼ÊÉÏ£¬
ÿ²ã¶ÀÁ¢ÇÒ͸Ã÷£¬
ÇÒͨ³£Ò²¶¼ÑØÓÃÏàͬµÄÉè¼ÆÀíÄ
ÕâÆäʵ²¢²»Äܱ£Ö¤»úÖÆ²ßÂÔ
µÄÓÐЧ·ÖÀ룬×îºóµÄϵͳÍùÍùºÜÄÑÈ¡µÃ¿ÉÀ©Õ¹ÐÔºÍÐÔÄܵÄÁ¼ºÃƽºâ¡£
ÎÒÃÇ¿ÉÒÔ·¢Ïֲַ㵼ÖÂÁËÿ²ã¶¼ÇãÏòÓÚ±äµÃ´ÏÃ÷¡¢
±äµÃ¸´ÔÓ£¬
µ«×ÛºÏЧ¹ûÈ´²»ÈçÈËÒâ¡£
¶øÔÚ
½ñÌìµÄÊý¾ÝÖÐÐÄ»·¾³ÖУ¬
ÈçÇ°ÃæËù˵£¬
ºÜ¶àʱºòÎÒÃÇÆäʵÊÇÔÚ×öÒ»¸ö³¬´óÐÍÓ¦Óã¬
Ó¦ÓõÄÌØ
µãÐèÒª±»³ä·Ö¿¼ÂÇ¡£
ÁíÍâÕâ¸öϵͳͨ³£Ö»ÓÐÒ»¸öÉú²úÉÌ£¬
¿ÉÒÔ½øÐд¹Ö±»¯µÄÉè¼Æ»òÕûºÏ¡£
´Ë
ʱ£¬ÓÉÓ¦Óòã»òƽ̨µÄÉϲãÌṩ²ßÂÔ£¬¶øÏ²ãÖ»ÐèÒª¿¼ÂÇ»úÖÆ£¬Õ⽫ʹϵͳ±äµÃ¸ü¼Ó¼òµ¥£¬
´Ó¶øÈ¡µÃ¸üºÃµÄÐÔÄÜ£¬¶øÀ©Õ¹ÐÔÒ²¿ÉÒԵõ½ºÜºÃµÄ±£Ö¤¡£
ÒÔ
SSD
ΪÀý£¬ÏÖÔÚµÄ
SSD
ÔÚÉè¼ÆÊ±Í¨³£¼ÙÉèÓÉÎļþϵͳÀ´Ê¹Óá£ÓÉÓÚÉÁ´æµÄ²Á³ýÌØÐÔ£¬Ðè
Òª¿¼ÂÇд»º³åÇø£¬
¶øÓÉÓÚ»º³åÇøÐèÒªÓÐÔ¤Áô¿Õ¼äÒ²ÐèÒªÓи´ÔÓµÄÖû»Ëã·¨ºÍ»ØÊÕ»úÖÆ£¬
Õâ¶Ô
ÐÔÄܺͳɱ¾
£¨Ò²°üÀ¨¿ª·¢³É±¾£©
¶¼ÓкܴóÓ°Ïì¡£
µ«ÔÚÊý¾ÝÖÐÐÄ»·¾³À
ÎÒÃÇͨ³£ÓÐÍêÕûÉè¼Æ
µÄ´æ´¢ÏµÍ³£¬
Êý¾Ý×éÖ¯·½Ê½ºÍ¶ÁдÁ÷³ÌÒ²±»³ä·ÖÓÅ»¯£¬
¶Ô´æ´¢É豸µÄÐèÇó¾ÍÊÇ×î»ù±¾µÄ¶¨³¤
¿é¡£ÕâÖÖÇé¿öÏ£¬
SSD
µÄÂß¼Æäʵ¿ÉÒÔ×öµÃ·Ç³£¼òµ¥£¬Ö±½Ó¶ÔÉϲ㱩¶ÄÚ²¿µÄ״̬£¨Èçͨ
·¡¢ÎïÀí¿é£©£¬´Ó¶øÌá¸ßÐÔÄÜ¡¢½µµÍ³É±¾¡£¸üÖØÒªµÄÊÇ£¬Õ⽫ÓÐЧÌá¸ß½»¸¶ËÙ¶È¡ª¡ªÕâ¶ÔÓÚ
»º½â·þÎñÆ÷¡¢
ÍøÂç¡¢
IDC
µÈÓ²¼þϵͳµÄ³¤ÊµÊ©ÖÜÆÚºÍÒµÎñ¿ìËÙÔö³¤µÄ¹æÄ£ÐèÇóÖ®¼äµÄì¶ÜÖÁ
¹ØÖØÒª¡£
Éϲã¶ÔϲãµÄÒªÇóÊÇÂß¼¼òµ¥¡¢
¹¦Äܵ¥Ò»£¬
¶øÏ²ã¶ÔÉϲãÔò±©Â¶¸ü¶àϸ½Ú£¬
×ÔÓµÄÂß¼ÅÐ
¶ÏÓÉ×îÉϲãµÄÓ¦ÓÃÀ´Íê³É£¬
ÕâÊÇÁíÒ»ÖÖ·½Ê½µÄ²ã´Î»¯¡£
¶øÇÒ£¬
²ã´ÎÖ®¼äÒ²²»ÐèҪά³ÖÒ»¸öÎï
Àí±ß½ç
£¨ÈçÏÖÔÚÓ¦ÓúÍÄÚºËÖ®¼ä£©
£¬
¿ÉÒÔͨ¹ýº¯Êýµ÷Óõķ½Ê½ÊµÏÖÈáÐԵIJã´Î»®·Ö¡£
ÓÐÐËȤ
µÄ¶ÁÕß¿ÉÒԲο¼
libOS
¡¾×¢£º
Exokernel
¡¿»òÕß
in-kernel web server
¡¾×¢£º
khttpd
¡¿µÄһЩÉè
¼ÆË¼Â·¡£
´Ó×ÀÃæµ½Êý¾ÝÖÐÐĵĵÚÈý¸ö±ä»¯ÊÇÆÀ¼ÛÌåϵ¡£
Ò»¸öÖеȹæÄ£µÄÊý¾ÝÖÐÐÄͨ³£°üº¬ÊýÍò·þÎñÆ÷£¬
ÔÚÕâÑùµÄ¹æÄ£Ï£¬
Ó²¼þ¹ÊÕϳÉΪ¼Ò³£±ã·¹¡£
Ò»°ã£¬
ÎÒÃÇͨ¹ýÈßÓà¸´ÖÆ»òÕßÖØ¸´´¦ÀíÀ´½â¾öÓ²
¼þ¹ÊÕÏÎÊÌâ¡£ÔÚϰ¹ßÁËÓ²¼þ¹ÊÕÏÖ®ºó£¬ÎÒÃǶÔÈí¼þ
Bug
µÄ̬¶ÈÒ²»á·¢Éú±ä»¯¡£Èí¼þ
Bug
ÖÐ
ÓÐÒ»ÖÖż·¢ÐÔ
Bug
¡¾×¢£ºÒ²±»³ÆÎª
heisenbug
£¬ÒâÖ¸º£É±¤²â²»×¼ÔÀí¡¿×îÄÑ·¢ÏÖÒ²×îÄÑ
µ÷ÊÔ£¬Ïû³ýÕâЩ
Bug
ÐèÒª¸¶³ö¾Þ´óµÄ´ú¼Û¡£µ«¿¼Âǵ½ÕâÖÖ
Bug
µÄ³öÏÖ¸ÅÂÊ¿°±ÈÓ²¼þ¹ÊÕÏ£¬
ÎÒÃÇÆäʵ¿ÉÒÔ²ÉÓÃͬÑùµÄ·½Ê½À´¶Ô´ý¡£
¹æÄ£Ôö³¤µÄͬʱ£¬
ϵͳµÄ¸´ÔÓ¶ÈÒ²±äµÃÔ½À´Ô½¸ß£¬
ÒÔÖÁÓںܶàʱºòÒѾ³¬¹ýÒ»¸öÈ˵ÄÖ±½ÓÕÆ
¿ØÄÜÁ¦¡£ÒªÈ¥Àí½âϵͳµÄÔËÐÐ״̬ÒÔ±£ÕÏÆäÕý³£ÔËÐУ¬ÔÚÕâÖÖÇé¿öϱäµÃÊ®·ÖÀ§ÄÑ¡£´Ëʱ£¬
ÎÒÃÇ¿ÉÒÔÀûÓÃϵͳÈßÓàµÄÌØµã£¬
¶ÔһЩ×é¼þ½øÐж¨ÆÚÖØÆô
£¨
reboot
£©
£¬
ͨ¹ýÖØÖÃ״̬½µµÍ
Bug
±»´¥·¢µÄ¸ÅÂÊ¡¾×¢£º
¡°
Recovery Oriented Computing
¡±
¡¿¡£¶ø¶ÔÓÚÐÔÄÜÉϵÄÎÊÌâÔò¸üÊÇÈç
´Ë£¬ÓÐʱ»¹ÐèÒª²ÉÓÃÊý¾ÝÍÚ¾òµÄ·½·¨À´½øÐÐÓÅ»¯»òϵͳµ÷ÊÔ¡¾×¢£º
M.K. Aguilera, J.C. Mogul, J.L. Wiener, etc.,
¡°Performance
debugging for distributed systems of black
boxes¡±,
in
SOSP¡¯03
¡¿¡£
º£Á¿Êý¾ÝÒÔ¼°Êý¾Ý´¦ÀíÓ¦ÓÃÒ²´øÀ´Á˺ܴóµÄÓ°Ïì¡£
ÓÉÓÚÊý¾ÝµÄ¹æÄ£ÒÔ¼°´¦ÀíËã·¨µÄÌØµã£¬
ºÜ
¶àʱºòϵͳֻÐèÒªÌṩ¸ÅÂÊÒâÒåÉÏÕýÈ·µÄ½á¹û£¬
²»ÐèÒª±£Ö¤Êý¾ÝµÄ¾ø¶Ô¿É¿¿£¬
Ò²²»ÐèÒªÑϸñ
±£Ö¤ÔËÐнá¹ûµÄ¿ÉÖØ¸´ÐÔ
|
ÎÄÕÂ
|
17763
|
´´½¨ÈÕÆÚ
|
8-12-2013
|
×÷Õß
|
zonglm
|
ÆÀ·Ö
|
(None)
|
|