|
ÕªÒª£ºSpongeÊÇÒ»¸ö¼òµ¥¶à²ã£¬¼æÈÝÍêÈ«POSIX¼æÈݵķֲ¼Ê½NFS¡¢Hadoop£¬Ö§³Ö¶ÔÏó´æ´¢¡¢ÔÆ´æ´¢¡¢SDS¡¢ÈÝÆ÷»úÖÆ£¬¼¯³ÉSparkΪ¼ÆËãÒýÇæ£¬»ùÓÚÄÚ´æ¼ÆËã¼¼ÊõµÄ·Ö²¼Ê½ÏµÍ³£¬½«´óÊý¾ÝµÄ´æ´¢¡¢¹ÜÀíºÍ¼ÆËãÓлúÈںϣ¬¾ßÓÐʵʱһÖÂÐÔ¡£
ʹÓöÔÏó´æ´¢¡¢¸ßÐÔÄÜ´æ´¢¡¢Hadoop¡¢Spark¡¢Storm¡¡µÈ¼¼ÊõÀ´´æ´¢¡¢´¦ÀíºÍ·ÖÎö´óÊý¾ÝºÜÁ÷ÐУ¬È»¶øº£ÃàÊý¾Ý¿Æ¼¼ÓÐÏÞ¹«Ë¾£¨ÒÔϼò³Æ¡°º£ÃàÊý¾Ý¡±£©Ëµ£¬ÕâЩ¼¼Êõ¸÷×ÔΪÕþ£¬´æÔÚÐÔÄÜ¡¢¹ÜÀí¡¢¿ª·¢¡¢³É±¾µÈ¶à·½ÃæµÄÎÊÌâ¡£
5ÔÂ20ÈÕ£¬º£ÃàÊý¾ÝÐû²¼ÍƳöÆäµÚ¶þ´ú´óÊý¾Ý²Ù×÷ϵͳ²úÆ·Sponge¡£º£ÃàÊý¾ÝCEOÖìÏþÃ÷¡¢VP´Þ±ó¡¢CTOÀî¶«¼°COOÁõ¶°½ÓÊÜÁËCSDN¼ÇÕߵIJɷã¬È«Ãæ½âÎöÁËSpongeµÄÑз¢³õÖÔ¡¢¼¼ÊõÌØµã¡¢ÊÊÓó¡¾°¡¢²¿ÊðģʽÒÔ¼°Êг¡Õ½ÂÔµÈһϵÁеÄÎÊÌâ¡£
×ÜÌåÀ´Ëµ£¬SpongeÊÇÒ»¸ö¼òµ¥¶à²ã£¬¼æÈÝÍêÈ«POSIX¼æÈݵķֲ¼Ê½NFS¡¢Hadoop£¬Ö§³Ö¶ÔÏó´æ´¢¡¢ÔÆ´æ´¢¡¢SDS£¨Èí¼þ¶¨Òå´æ´¢£©¡¢ÈÝÆ÷»úÖÆ£¬¼¯³ÉSparkΪ¼ÆËãÒýÇæ£¬»ùÓÚÄÚ´æ¼ÆËã¼¼ÊõµÄ·Ö²¼Ê½ÏµÍ³£¬½«´óÊý¾ÝµÄ´æ´¢¡¢¹ÜÀíºÍ¼ÆËãÓлúÈںϣ¬¾ßÓÐʵʱһÖÂÐÔ£¬Ò×ÓÚ¼æÈÝÏÖÓÐϵͳ£¬Ïà±È10Äêǰµ®ÉúµÄµÚÒ»´ú²úÆ·Hadoop¸ü¼Ó¼òµ¥Ò×Óã¬Ò×ÓÚÀ©Õ¹¡£
Èýλ¸ß¹Ü±íʾ£¬½ö½öÓÐ×÷Ϊ¼ÆËãÆ½Ì¨µÄSpark²»×ãÒÔÈ«ÃæÓ¦¶Ô´óÊý¾ÝµÄÌôÕ½£¬ÕûºÏºóµÄSponge¼¼Êõ¿ò¼Ü£¬Äܹ»Í¬Ê±Ö§³Ö´óÊý¾Ý¡¢ÔÆ´æ´¢¡¢½á¹¹»¯¡¢°ë½á¹¹»¯ºÍ·Ç½á¹¹»¯Êý¾ÝµÄ´¦Àí£¬´ú±íÁË´óÊý¾ÝµÄ·¢Õ¹·½Ïò¡£
ÐèÇó&ÀíÄî
SpongeµÄµ®ÉúÔ´ÓÚÈý¸öÀíÓÉ¡£Ê×ÏÈÊÇ´óÊý¾ÝÊг¡µÄ¸ÕÐè¡£½ñÌìÒѾûÓÐÈËÔÙ»³ÒÉ´óÊý¾ÝµÄ¼ÛÖµ£¬ÔƼÆËã¡¢ÒÆ¶¯»¥Áª¡¢ÎïÁªÍø¡¢»úÆ÷ѧϰ¡¢ÎÞÈË»úµÈÇ°ÑØ¼¼ÊõµÄÆÕ¼°Óë´óÊý¾ÝµÄ·¢Õ¹ÏàµÃÒæÕ㬲»ÂÛÔÚÃÀ¹ú»¹ÊÇÖйú£¬´óÊý¾ÝÒѾÔںܶàµÄITÆóÒµºÍ´«Í³ÆóÒµ¿ªÊ¼Â䵨£¬Æ©È绥ÁªÍø½ðÈÚ¹«Ë¾µÄ·´ÆÛÕ©Á÷³Ì£¬µçÐÅÔËÓªÉ̵Ŀͻ§·þÎñ·ÖÎö£¬¶¼¹á´©×Å´óÊý¾ÝºÍ»úÆ÷ѧϰ¼¼ÊõµÄÓ¦Óã¬ÕâÒ²´Ì¼¤×ųõ´´ÆóÒµÔÚÕâ¸öÁìÓòѰÕÒеÄÉÌÒµ»ú»á¡£
ĿǰÆÕ±é±»²ÉÓÃÀ´Ó¦¶Ô´óÊý¾ÝµÄÊÇ¿ªÔ´Èí¼þÓëÁ®¼ÛµÄx86·þÎñÆ÷µÄ×éºÏ£¬ÕâЩ¿ªÔ´²úÆ·°üÀ¨Hadoop¡¢Spark¡¢Storm¡¢NoSQLµÈ¡£´«Í³´æ´¢ºÍÊý¾Ý¿âµ±È»Ò²Õë¶Ô´óÊý¾ÝµÄÐèÇóÉý¼¶£¬ÓÃÀ´´æ´¢¼ÛÖµÃܶȵ͵ĴóÁ¿·Ç½á¹¹»¯Êý¾ÝÈ´²»ÏÖʵ¡£ÕâЩԱ¾±»Google¡¢Facebook¡¢YahooµÈ´ó¹«Ë¾ÑéÖ¤ÔÚijЩ³¡¾°ºÜ³É¹¦µÄ¿ªÔ´ÏîÄ¿£¬Ò²´æÔÚÎÊÌ⣺²»Í¬¹¦ÄÜÄ£¿é¶ÔÓ¦¶à¸öÏ໥¶ÀÁ¢µÄ¿ªÔ´ÏîÄ¿£¬Îª²»Í¬µÄÄ¿µÄ¶øÉè¼Æ£¬Æä¹ØÏµºÜ¸´ÔÓ£¬È±·¦Í¨ÓÃÐÔ£¬ÏµÍ³²¿ÊðºÍʹÓø´ÔÓ¶øµÍЧ£¬¶þ´Î¿ª·¢À§ÄÑ£¬²¢ÇÒÄÑÒÔͳһ¹ÜÀíºÍ¼à¿Ø£¬Î¬»¤³É±¾¸ß£¬ËùÒÔ£¬ÐèÒªÓÐÒ»¸öͳһµÄƽ̨¡£µ±Ç°·çÍ·ÕýÊ¢µÄSpark£¬±»Æä·ÛË¿ÈÏΪÊÇͨÓõĴóÊý¾Ý´¦ÀíÆ½Ì¨£¬µ«Àî¶«ÈÏΪ£¬SparkÖ»ÊÇÒ»¸ö¼ÆËãÆ½Ì¨£¬²¢Î´Éæ¼°µ½ÈçÎļþϵͳµÈµ×²ãµÄ´óÊý¾ÝºËÐļ¼Êõ£¬²»ÄÜËãÊÇÎÒÃÇÐèÒªµÄ´óÊý¾Ý²Ù×÷ϵͳ¡£
ÔÚÀî¶«¿´À´£¬µÚ¶þ´ú´óÊý¾Ý²Ù×÷ϵͳºÍµÚÒ»´ú²úÆ·µÄ×î±¾ÖÊÇø±ðÔÚÓÚÉè¼ÆÀíÄîµÄ²»Í¬£¬Óɴ˼ܹ¹ºÍʵÏÖ·½·¨Ò²²»Ò»Ñù¡£µÚÒ»´úµÄϵͳ¼´Ê¹ÔÙ´ò²¹¶¡£¬ÒòΪ¼Ü¹¹µÄÔÒòÒ²´æÔÚÎÞ·¨Ìí¼ÓµÄ¹¦ÄÜ¡£º£ÃàÊý¾ÝÏàÐÅ£¬Ëæ×ÅÉ罻ýÌå¡¢ÖÇÄÜÉ豸µÄÆÕ¼°£¬HadoopÔÚÆäµ®Éú»·¾³ÏÂ×ÔÈ»²ÉÓõĴ«Í³Åú´¦ÀíµÄ·½Ê½£¬ÒѾ¸ú²»ÉÏÏÖÔڵĽ»»¥Ê½´¦Àí¡¢ÊµÊ±´¦ÀíµÄÐèÇó£¬ÏÖÔÚÎÒÃÇÐèÒª¶àÑù»¯µÄ´¦Àí·½Ê½£¬Èç¹û²¿ÊðHadoop¾Í¿ÉÄÜÐèÒª²¢ÐеÄÁ½Ì×ϵͳÀ´ÌṩÁ½ÖÖ´¦Àíģʽ¡£ÁíÒ»·½Ã棬Hadoop°æ±¾Öڶ࣬ÏÖÔÚ¾ÍÓÐ1.0¡¢1.1¡¢2.0£¬Éú̬ϵͳÏîÄ¿µÄʹÓÃÒ²²»ÊÇÒ»¼þ¼òµ¥µÄÊÂÇé¡£
´ËÍ⣬×ÔÖ÷֪ʶ²úȨµÄÐèÇóͬÑù×÷ÓÃÓÚ´óÊý¾Ý¼¼ÊõÁìÓò¡£ÖìÏþÃ÷³Æ£¬´óÊý¾Ý²Ù×÷ϵͳµÄ×¼ÈëÃż÷¸ß£¬ÈçÎļþϵͳÕâÑùµÄºËÐļ¼Êõ£¬¼´±ãÊÇÔÚÃÀ¹ú£¬¾ßÓÐÏà¹Ø¿ª·¢ÄÜÁ¦µÄÍŶÓÒ²²»¶à£¬¶øº£ÃàÊý¾Ý¾ßÓйè¹ÈµÄÑз¢ÍŶӣ¬ÆäÖв»·¦ÔÚ¹è¹È20¶àÄêµÄר¼Ò£¬¾ßÓÐÕâ¸ö¼¼Êõ´¢±¸¡£
¼òµ¥¡¢¸ßЧ¡¢¿É¿¿¡¢¾¼Ã£¬ÕâËĸö´Ê£¬ÊǺ£ÃàÊý¾Ý¶ÔµÚ¶þ´ú´óÊý¾Ý²Ù×÷ϵͳµÄ¼ÛÖµµÄ×·Çó£¬ÒÔ¼°Sponge²úÆ·Éè¼ÆµÄÀíÄî¡£
¼¼Êõ&²úÆ·
Sponge¼¯³ÉÁËÏÖÓпªÔ´¼¼ÊõµÄ˼Ïë»òÕß×é¼þ£¬µ«²¢²»½ö½öÊÇÒ»¸ö¼òµ¥µÄ´ò°ü£¬¶øÊÇÒ»Ì×ÓµÓÐ20¶àÏîרÀû¼¼ÊõµÄ¼¼Êõ¡£ÎÒÃÇÏÈÀ´¿´ËüµÄ¼Ü¹¹¡£Sponge×·Çó¼òµ¥Ò×Ó㬲¢Äܹ»ÕûºÏ¶à²ã£¬Ìṩһ¸ö¸ßÐÔÄܵį½Ì¨£¬Âú×㲻ͬ²ãÃæµÄÐèÇ󣬼¼Êõ¼Ü¹¹ÈçÏÂͼËùʾ¡£

SpongeÕûÌå¼¼Êõ¼Ü¹¹
ÆäÉè¼ÆÒªµãÈçÏ£º
- ´æ´¢²ãÕûºÏ¸ßÐÔÄÜ´æ´¢¡¢½á¹¹ºÍ°ë½á¹¹»¯Êý¾Ý´¦Àí¡¢ÔÆ¶ÔÏó´æ´¢ºÍÈí¼þ¶¨Òå´æ´¢²ã£¬²ÉÓÃͳһµÄºËÐÄ£¬¸÷²ã¶¼ÊµÏÖÔÚͬһ¸öºËÐÄÖ®ÉÏ£¬ÊµÏָ߿ÉÀ©Õ¹ºÍÕûºÏ¶à²ã¡£
-
·ÖÎö²ã¼¯³ÉSpark×÷Ϊ¼ÆËãÒýÇæ£¬°üÀ¨ºËÐÄAPIºÍÆäËû¸½¼Ó¿âÈçStreaming¡¢Spark SQL¡¢GraphX¡¢MLlibµÈ¡£
-
·Ö²¼Ê½NFSÍêÈ«POSIX¼æÈÝ£¬Ò×ÓÚ¼¯³ÉÏÖÓеÄϵͳ¡¢Ó¦Óúͽű¾¡£
-
ʵÏÖHadoopÎļþϵͳµÄ½Ó¿Ú£¬Äܹ»¼æÈÝHadoopÉú̬ϵͳ£¨Ê¹ÓÃÈκÎHadoop°æ±¾¶¼¿ÉÒÔ½øÐÐÊý¾ÝÇ¨ÒÆ£©¡£
-
µ×²ã´æ´¢¼Ü¹¹Ö§³ÖϸÁ£¶ÈÊý¾Ý¿éºÍCDR£¨³ÖÐøÊý¾Ý¸´ÖÆ£©¡£
-
²ÉÓÃMasterless¼¯ÈºÍØÆË¼Ü¹¹£¬½â¾öµ¥µã¹ÊÕϺÍСÎļþÊý¾ÝµÄÏÞÖÆ¡£
ÕâÀïҪ˵һÏÂMasterless£¬Ò²¾ÍÊÇSpongeÖ»ÓÐÒ»ÖÖ½ÚµãÀàÐÍ£¬Ã»ÓÐHadoopÄÇÑùµÄMasterºÍSlaveÖ®·Ö£¬¿Í»§¶Ë¿ÉÒÔÖ±½ÓºÍSponge½ÚµãͨÐÅ£¬ÎÞÐè¾¹ýMaster¡£

Masterless½á¹¹
Õâ¾Í´øÀ´ÈçϵÄÓÅÊÆ£º
- ËùÓеÄÎļþϵͳµÄmetadataƽ¾ù·ÖÅäÔÚÿ¸ö½Úµã£¬ËùÒÔûÓе¥µã¹ÊÕϺÍÎļþÊý¾ÝµÄÏÞÖÆ£¬¿ÉÒÔ´¦Àí¸ü¶àСÎļþ¡£
-
½ÚµãÖ®¼äûÓÐÒÀÀµ¹ØÏµ£¬ËùÓеķþÎñ¶¼ÔÚµ¥¸ö½Úµã£¬²»ÐèÒªÆäËû¶ÀÁ¢µÄ¼¯ÈºÐÖú¡£
ûÓÐNameNodeµÄÏÞÖÆ£¬´¦Àí´ó²¢·¢ÐÔÄܸüºÃ¡£
-
´ËÍ⣬Sponge»¹ÊÇÄ£¿é»¯¼Ü¹¹£¬Õâ²»ÏÞÓÚ·Ö²¼Ê½ÏµÍ³ÍØÆË½á¹¹£¬µ¥¸öʵÀýÒ²ÊÇÓɶà¸ö×é¼þºÍ¶à¸ö·þÎñ×é³ÉµÄ¡£

SpongeÓëHadoopµÄ¶Ô±È
ÏÂÃæÔÙչʾһЩ¾ßÌåµÄÖØÒªÌØÐÔ¡£
SpongeÎļþϵͳ£¨SpongeFS£©
²»Í¬ÓÚÒÔÍùÒÔ´ÅÅ̼ÆËã¼¼ÊõΪºËÐĵÄÎļþϵͳ£¬SpongeFS½«¼¯ÈºÄÚ´æ¹ÜÀíÌáÉý³ÉΪÎļþϵͳµÄÖØÒª×é³É²¿·Ö£¬ÒÔÂú×ã´óÁ¿ÎļþÊý¾Ý¶ÁдIOµÄ¸ßÐèÇó¡£SpongeFS»ùÓÚ·Ö²¼Ê½Éè¼Æ£¬ÉÏÎÄ˵µÄMasterless½á¹¹£¬ÒÔ¼°Ä£¿é»¯¼Ü¹¹£¬ÕýÊÇÓÉSpongeFSÀ´²ÙÅ̵ġ£
SpongeFSÖ÷ÒªÓɼ¯Èº¹ÜÀí²ã¡¢Îļþ¹ÜÀí²ãºÍ´æ´¢²ã¹¹³É£¨Ïê¼û¼Ü¹¹Í¼£©¡£µ±Êý¾Ý½øÈëSpongeFS£¬¾Í±»·Ö³ÉÒ»¸ö¸öÊý¾Ý¿é£¬Ã¿¸öÊý¾Ý¿éͨ¹ýÎļþ¹ÜÀí²ãÏÈ´æÈ뻺´æ²ã£¬±»¼ÓÈ뼯Ⱥ¼ä¸´ÖƶÓÁУ¬Ò»»÷¼ÓÈëµ½³Ö¾Ã¶ÓÁеȴý´æÈë³Ö¾Ã²ã£¬CDRÔò°Ñ³Ö¾Ã²ãÊý¾Ý¿é¸´ÖƵ½Ä¿±ê¼¯Èº£¨Ä¿±êȺÊý¾Ý¿éÒ²ÓÅÏÈ´æµ½»º´æ²ã£©¡£
Îļþ¹ÜÀí²ãµÄ»ù±¾¹ÜÀíµ¥Î»ÊÇVolume£¬Ã¿¸öVolume¿ÉÒÔÓв»Í¬µÄ¹ÜÀíÉèÖã¬ÈçÈÝ´íÐÔ¡¢°²È«ÐÔ¡¢ÎïÀí×ÊÔ´µÄʹÓõȡ£
»º´æ²ãÌṩ¸ßÐÔÄÜ·þÎñµÄ¹Ø¼ü¡£SpongeFSµÄ»º´æ²ãÓÉÕû¸ö¼¯ÈºËùÓнڵãµÄ»º´æ×é³É£¬¹²Í¬Ð×÷Íê³ÉIO²Ù×÷£¬»º´æ²ãÌṩ×Ô¶¯Ô¤¼ÓÔØ¹¦ÄÜ£¬²¢Í¨¹ýEjectionÄÚ´æ¹ÜÀí¼¼Êõ£¬ÒÔLowºÍHighΪ½çÏÞ±£Ö¤»º´æ¿Õ¼ä¿ìËÙ¡¢°²È«µØÖØÐ·ÖÅä¡£

SpongeFS»º´æ²ã
×îºóҪ˵µÄÊÇ£¬SpongeFSµÄ³Ö¾Ã²ãʹÓá°ÈÝÆ÷¡±ÌṩÎļþÊý¾Ý¹ÜÀí·þÎñ¡£ÈÝÆ÷ÊÇÐéÄâµÄÎļþÊý¾ÝÈÝÆ÷¡£Ò»¸öÈÝÆ÷¾ÍÊÇSpongeFS¼¯ÈºÀïµÄÒ»¸öÂß¼×éÎïÀí×ÊÔ´£¬Ëü¿ÉÒÔ±» ¼¯ÈºÀïµÄÎļþ¹ÜÀí²ãʹÓá£ÈÝÆ÷Ìṩ°²È«µÄ»úÖÆÀ´×éÖ¯¡¢¹ÜÀí¡¢·ÖÎöÊý¾Ý´æ´¢×ÊÔ´£¬Ã¿¸öÈÝÆ÷ÓÉÒ»¶¨ÊýÁ¿µÄÐéÄâÈÝÆ÷¹¹³Éƽ¾ù·ÖÅäÔÚ¼¯ÈºÃ¿¸ö½ÚµãÉÏ£¨Ïê¼ûMasterless½á¹¹Í¼£©¡£
SpongeFS²ÉÓÃÈÝÆ÷Ìṩ¸ß¿ÉÓᢶ¯Ì¬ÖØÅäÖᢷֲ¼Ê½µÄÊý¾Ý´æ´¢£¬ÔÚ¼¯ÈºµÄ½Úµã·¢Éú¹ÊÕÏʱ£¬ÔÊÐí¼¯Èº×ÔÎÒÐÞ¸´²¢¼ÌÐøÌṩ·þÎñ¡£ÈÝÆ÷µÄÖ÷ÒªµÄ¹¦ÄÜÌØÐÔÈçÏ£º
- Êý¾Ý³Ö¾Ã±£´æ¡£Êý¾ÝÒì²½´Ó»º´æ²ãдÍù³Ö¾Ã²ã£¬·À·¶·þÎñÖØÆô»ò½ÏСµÄ¹ÊÕÏ·¢ÉúÊý¾Ý¶ªÊ§¡£
-
¸±±¾¹ÜÀí¡£¿ÉÒÔÅäÖÃÊý¾Ý¸±±¾µÄ·ÝÊý¡£¼¯ÈºÀïµÄÿ¸ö½ÚÆû¼È±£´æ»îÔ¾µÄÊý¾Ý£¬ÓÖ±£´æÊý¾Ý¸±±¾¡£µ±Ä³¸ö½Úµã²»¿ÉÓã¬Êý¾Ý¸±±¾ÐéÄâÈÝÆ÷¿ÉÒÔ±»ÌáÉýΪ»îÔ¾µÄÐéÄâ¿ÍÆ÷£¬´Ó¶ø¼ÌÐøÌṩ¸ß¿ÉÓ÷þÎñ¡£
-
ÖØÐÂ×éÖ¯¡£¼¯ÈºÀïµÄÊý¾Ý¿ÉÒÔÖØÐÂ×éÖ¯ºÍ·Ö²¼£¬´Ó¶ø¶¯Ì¬Ôö¼Ó»òɾ³ýÈÝÆ÷ºÍ·þÎñÆ÷¡£
ÈÝ»ý¸Ä±ä¡£¿ÉÒÔÔÚÐèҪʱ¶¯Ì¬µ÷ÕûÈÝ»ýÈÝ»ý´óС¡£
ÎļþϵͳʵʱһÖÂÐÔ
Sponge FSCKÊÇSpongeµÄÎļþϵͳʵʱһÖÂÐÔ¼ì²é¼¼Êõ£¬Í¨¹ýÔÚºǫ́ÔËÐеÄFSCK DeamonÍê³ÉÒ»ÖÂÐÔ¼ì²é£¬ÈκζÔSpongeFSµÄÐ޸쬶¼»á´Ó¸÷¸ö½Úµãͨ¹ýÒ»¸öÇáÁ¿¼¶µÄMapReduceÒýÇæÊµÊ±´«Ê䏸FSCK Deamon»ã×ܺͼ°Ê±¼ì²â£¬Ö§³ÖÍêÈ«ºÍÔöÁ¿¼ì²é£¬ÒÔÌá¸ßÐÔÄÜ£¬½µµÍϵͳ¿ªÏú¡£
Àî¶«½éÉÜ£¬FSCK½á¹û²éѯ¿ÉÒÔÓÉÓû§Ó¦ÓóÌÐò²éѯ£¬SpongeͬʱÓÐÒ»¸öFSCK long running service£¬Õâ¸öservice½øÐнá¹û²éѯ»ã×Ü¡£
CDRÊý¾Ýͬ²½¼¼Êõ
CDRÁ÷³ÌǰÎÄÒѾ˵¹ý£¬Í¼Ê¾ÈçÏ¡£

CDR¼¼Êõ
ÓëHadoopµÄdistcp£¨Åú´¦Àí¹ý³Ì£©²»Í¬£¬CDRÖ§³Ö¼¯Èº»òÊý¾ÝÖÐÐÄÖ®¼ä½Ó½üʵʱµÄ¸´ÖÆ£¬²¢Ö§³ÖÎļþ¡¢Îļþ¼Ð¡¢Îļþ¾íµÈ²»Í¬µÄɸѡ¹æÔò£¬ÒÔ¼°ÔöÁ¿¸´ÖÆ¡¢¶Ïµã»Ö¸´¡¢µ¥ÏòºÍË«Ïò¸´ÖÆ¡¢ÄÚ´æ¼ä¸´ÖƵȡ£
·Ö²¼Ê½NFS¼¼Êõ
SpongeFSÖ§³ÖÊµÊ±Ëæ»ú¶Áд²Ù×÷£¬ËùÒÔSpongeµÄNFSÊÇÍêÈ«POSIX¼æÈݵģº

·Ö²¼Ê½NFS¼¼Êõ
- ÿ¸ö½Úµã¶¼ÊµÏÖÍêÈ«ÎÞ״̬µÄSpongeÎļþϵͳNFS·þÎñÆ÷£¬¶¼¿ÉÒÔ±»NFS¿Í»§¶Ëmount¡£
-
ÿ¸öNFS·þÎñÆ÷ÔËÐÐÔÚCNodeÉÏ£¬×÷ΪCNodeµÄÒ»¸ö·þÎñ£¬¿Í»§¶ËµÄNFSÇëÇóͨ¹ýCNode½âÊͳƶÔÔÚ´æ´¢²ãµÄÎļþ²Ù×÷¡£
-
ÈκÎÒ»¸öSpongeÎļþϵͳNFS·þÎñÆ÷¶¼¿ÉÒÔºÍËùÓеĽڵãͨѶ¡£
-
SpongeÎļþϵͳNFS·þÎñÆ÷ʵÏÖÁËNFSv3¡£
Êý¾Ý·ÖÎöÒýÇæ
¿¼Âǵ½Java»òPythonµÄÖ§³Ö¡¢shellÖеĽ»»¥Ê½²éѯ¡¢SQL²éѯ¡¢Á÷Êý¾Ý¡¢Í¼±íÊý¾Ý´¦ÀíºÍ»úÆ÷ѧϰµÈ£¬SpongeÑ¡ÔñÁËSpark×÷Ϊ·ÖÎöÒýÇæ£¬SparkÔÚÕâЩÁìÓò±íÏÖ³öÉ«£¬Í¬Ê±¼Ü¹¹ºÍSpongeµÄµ×²ã´æ´¢¼Ü¹¹Ò²·Ç³£ÏàËÆ¡£ÕâÀïֻ˵Sponge¶ÔSparkµÄ¡°¼Ó³Ö¡±×÷Óãº
- SparkÔÚ´ÓSpongeÎļþϵͳ¶ÁдÎļþʱ£¬´ÓÄÚ´æÖжÁÈ¡£¬¼õÉÙ´ÅÅÌIO¡£
-
Sponge°ïÖúSparkͨ¹ýÔÚÊý¾Ý´¦Àí¹ý³ÌÖгɱ¾¸üµÍµÄÏ´Æ¢£¨Shuffle£©·½Ê½£¬ÔÚmapperºÍreducerÖ®¼ä½¨Á¢Á÷ͨµÀ£¬ÌáÉýSparkÐÔÄÜ¡£
-
ÀûÓÃSpongeÄÚ´æÊý¾Ý´æ´¢ºÍ½Ó½üʵʱµÄ´¦ÀíÄÜÁ¦ÌáÉýSpark´óÊý¾Ý´¦ÀíÐÔÄÜ¡£

Êý¾Ý·ÖÎöÒýÇæ
Èí¼þ¶¨Òå´æ´¢
SpongeµÄ¼¯Èº¹ÜÀí²ãÊǺʹ洢²ã·ÖÀëµÄ£¬¶ø´æ´¢²ãÊÇÓɼ¯Èº¹ÜÀí²ã½øÐйÜÀí¡£ÔÚ´æ´¢²ã£¬Sponge²ÉÓÃKinetic´æ´¢¼¼ÊõÀ´Êµ¿öSDS¡£
 Èí¼þ¶¨Òå´æ´¢
Sponge SDS×öÁËÒÔϹ¤×÷£º
- Êý¾Ý´æ´¢¡£SpongeÎļþϵͳÔڳ־òãʵÏÖÁ˺ÍKinetic½Ó¿ÚµÄ¼¯³É£¬Êý¾Ýͨ¹ýSponge Îļþϵͳ¾¹ýTCP/IPÍøÂçÖÐÒÔKVµÄ·½Ê½´æÈëKinetic¡£
-
¼¯Èº¹ÜÀí¡£Sponge¼¯Èº¹ÜÀí¸ºÔð¹ÜÀíKinetic Farm£¬°üÀ¨¼Ó¼õKinetic£¬Êý¾Ýreblance£¬Kinetic failover¡£ÓÉÓÚKinetic FarmµÄ¹ÜÀíÊǺͽڵãÊÇ·ÖÀëµÄ£¬ËùKinetic FarmµÄÀ©Õ¹ÐÔºÍSponge½ÚµãµÄÀ©Õ¹Ò²ÊÇ·ÖÀëµÄ£¬Ôö¼õKinetic²»ÐèÒªÔö¼õSponge½Úµã¡£
-
¶à×â»§¡£SpongeÎļþϵͳ¸ºÔð¶àÓû§¹ÜÀí£¬ÎªÓÃʬÌṩQuota¹ÜÀí£¬±¸·Ý£¬Snapshot¡£
-
SpongeÎļþϵͳµÄÆäËü¹¦Äܶ¼¿ÉÒÔÌṩ¸øSDSÓû§£¬ÈçCDR£¨³ÖÐøÊý¾Ý¸´ÖÆ£©£¬¸ßÐÔÄÜ·ÖÎöµÈ¡£
-
Ö§³Ö¶ÔÏó´æ´¢ÐÒéSwift
Ö§³Ö¶ÔÏó´æ´¢ÐÒéSwiftÊÇSpongeºóÐø°æ±¾µÄ¹¦ÄÜ¡£SpongeÔÚ´æ´¢²ã°ÑÔÆ´æ´¢ºÍ´óÊý¾Ý´æ´¢½áºÏ£¬²»ÐèÒª¶àÓàµÄETL£¬´æ´¢¿Õ¼ä¡¢ÍøÂç´ø¿í£¬Í¨¹ýSponge¶ÔÏó´æ´¢´æÈëµ½SpongeµÄÊý¾Ý£¬¿ÉÒÔÖ±½ÓÓÃÀ´×ö¸÷ÖÖ¹¤×÷¡£
SpongeÔÚCNodeÄÚ²¿ÊµÏÖSwift½Ó¿Ú£¬Êý¾Ýͨ¹ýswift´æÈëµ½SpongeÎļþϵͳ¿ÉÒÔÒÔNFSµÄ·½Ê½»ñÈ¡£¬·´Ö®ÒàÈ»¡£
ÓÉÒÔÉϽéÉÜ¿ÉÒÔ¿´µ½£¬SpongeÊÇÒ»Ì×¼òµ¥¶à²ãµÄϵͳ£¬Í¬Ê±Ìṩ·á¸»µÄ¹¦ÄܺÍÀ©Õ¹ÐÔ£¬²¢¼æÈÝÏÖÓеļ¼Êõ£¬Àî¶«ÔÚ´ð¼ÇÕßÎʵÄʱºòÃ÷È·±íʾ£¬SpongeµÄ¸÷¸ö×é¼þÊÇËÉñîºÏµÄ£¬Ò²¾ÍÊÇ˵£¬ÕâЩ¹¦ÄÜ¿ÉÒÔÓе¥¶ÀÌṩµÄ¿ÉÄÜÐÔ£¬ÒÔÂú×ãÓû§µÄ¸öÐÔ»¯ÐèÇó¡£
¸ù¾Ýº£ÃàÊý¾ÝµÄ½éÉÜ£¬Sponge¶Ô²¿Êð»·¾³Ã»ÓÐÌØ±ðµÄÐèÇ󣬶øMasterlessµÄ¼¯ÈºÍØÆË½á¹¹»¹Ê¹µÃËüÐèÒªµÄ½ÚµãÊý¾Ý¸üÉÙ£¬ÕâÒâζןüÉÙµÄͶ×ÊÃż÷¡£Sponge»¹¿ÉÒÔÓ뵱ǰÈÈÃŵÄÈÝÆ÷¼¼Êõ¼°ÐéÄâ»ú¼¼ÊõÅäºÏʹÓã¬Ö§³ÖÁ½ÖÖ·½Ê½£ºSponge¿ÉÒÔ²¿ÊðÔÚÈÝÆ÷»òÐéÄâ»úÀͬʱSpongeFSÒ²¿ÉÒÔ±»ÈÝÆ÷»òÐéÄâ»úËùʹÓá£
´ËÍ⣬Sponge²»ÐèÒªÁíÆð¯ÔîÍÆ³öÒ»Ì××Ô¼ºµÄ±à³Ì¿ò¼Ü£¬ÕâÑùµÄºÃ´¦ÊÇ¿ª·¢ÈËÔ±²»ÐèÒªÔÙÕÆÎÕÁíÍâµÄ±à³Ì¼¼Êõ¡£
Õ½ÂÔ&Éú̬
º£ÃàÊý¾Ý¶Ô×ÔÉíµÄ¶¨Î»ÊÇÒ»¸ö¼¼ÊõÇý¶¯µÄ¹«Ë¾£¬Ö»×¨×¢ÓÚ´óÊý¾Ý²Ù×÷ϵͳ£¬ÉϲãµÄ¿ª·¢ÓкÏ×÷»ï°éÀ´Ìṩ¡£Î´À´£¬Sponge»¹»áÖ§³ÖºÍ¸ü¶à¹«ÓÐÔÆµÄ¼¯³É¡£
º£ÃàÊý¾ÝÇ¿µ÷ÁËSpongeµÄ·Ïߣº¿ª·Å£¬µ«²»¿ªÔ´¡£ÖìÏþÃ÷±íʾ£¬¿ªÔ´ÊǼ¼Êõ¶ø²»ÊDzúÆ·£¬¿ªÔ´ÉçÇøµÄ¹æ·¶¹ÜÀíÖ¼ÔÚÍÆ¶¯¼¼Êõ·¢Õ¹¶ø²»ÊǼ¼Êõ²úÆ·»¯£¬µ«ÆóÒµÕæÕýÐèÒªµÄÊDzúÆ·¡£ËùÒÔ£¬Sponge»á¿ª·ÅAPIÌṩ¸ø¶þ´Î¿ª·¢Õߣ¬ÈÃËûÃÇ×ö¸÷ÀàÐÐÒµµÄÊý¾ÝÍÚ¾ò¡¢Êý¾Ý·ÖÎöµÈÓ¦Óá£ÖìÏþÃ÷±íʾ£¬ÔÚÖǻ۳ÇÊС¢Öǻ۽ðÈÚ¡¢ÎïÁªÍø¡¢ÖÇÄÜ´©´÷µÈÓ¦Óó¡¾°£¬¶¼ÓÐSpongeµÄÓÃÎäÖ®µØ¡£
ÖìÏþÃ÷½éÉÜ£¬SpongeÔÚÃÀ¹úºÍÖйúÊг¡¶¼ÒѾÓÐÓû§ÊÔÓá£Ò»¼ÒÃÀ¹úÓ²Å̾ÞÍ·ÒѾÔÚÉú²ú»·¾³ÖвâÊÔSponge£»¶øÖйúij´óÐÍÊÓÆµ¼à¿ØÆóÒµ£¬Ê¹ÓÃHadoopÒ»Äê¶àÈÔÈ»´æÔںܶàÎÊÌâûÓнâ¾ö£¬·´¶øÊÔÓÃSpongeϵͳ»ñµÃÁ˳¬ºõÏëÏóµÄÐÔÄܺÍÍÌÍÂÁ¿¡£
ÖйúºÍÃÀ¹úÁ½´ó´óÊý¾ÝÊг¡¶¼ÊǺ£ÃàÊý¾ÝµÄÄ¿±ê£¬²»¹ý£¬º£ÃàÊý¾ÝÒѾעÏúÁËÃÀ¹ú¹«Ë¾£¬Î´À´½«ÒÔÖйúµÄ´óÊý¾ÝÊг¡ÎªÒµÎñÖØÐÄ¡£µ±È»£¬´Ó½ñÄêϰëÄêÄêµ×µ½Ã÷ÄêÄê³õ£¬º£ÃàÊý¾ÝÒ²»á²¼¾ÖÃÀ¹úµÄÊг¡¡£¶øÔÚÖйúµÄ¼¼ÊõÍÆ¹ãºÍÉú̬½¨É裬º£ÃàÊý¾ÝÒѾ¿ªÊ¼¸ßУµÄÃâ·ÑÊÔÓ㬲úÒµÁªÃË/²úÒµ»ùµØ»áÊÇδÀ´µÄÒ»¸öÖØµã¡£
²¹³äÎÊÌ⣺ÎļþϵͳÊÇSpongeµÄÒ»ÏîºËÐļ¼Êõ£¬ÊÇ·ñ¿ÉÒÔ°ÑSpongeFSºÍ·Ö²¼Ê½ÄÚ´æÎļþϵͳ×öÒ»ÏÂTachyon±È½Ï£¿
Àî¶«£ºTachyonºÍSponge¶¼ÌṩÁËÒ»¸öIn-MemoryµÄ·Ö²¼Ê½´æ´¢ÏµÍ³£¬ÕâÒ»µãÊÇÀàËÆµÄ¡£¶þÕßÖ÷ÒªµÄÈý¸ö²»Í¬µãÈçÏ£º
- Tachyon ÊÇHadoop compatibleµÄ£¬Sponge²»µ«ÊÇHadoop compatibleµÄ£¬¶øÇÒÊÇPOSIX compatibleµÄ¡£Òâ˼ÊÇ˵Óû§¿ÉÒÔ°ÑSpongeµÄÎļþϵͳmountµ½±¾µØ£¬ÏñlocalÎļþϵͳһÑùʹÓᣵ«ÊÇÈç¹ûÓû§ÒªaccessÔÚTachyonÀïÃæµÄÊý¾Ý£¬ÔòÐèҪʹÓÃTachyonÌṩµÄAPI»òÕßÌØÊâCLIÖ¸ÁºÜ²»·½±ã¡£
-
TachyonÍùÍùÎÞ·¨¶ÀÁ¢Ê¹Óã¬ÒòΪËüûÓÐ×Ô¼ºµÄpersistÎļþϵͳ£¬ÐèÒªplug-inµÚÈý·½Îļþϵͳ±ÈÈçHDFS£¬ÕâÑùÓû§ÓÖÒª¶à¹ÜÀíÒ»¸öϵͳ¡£¶øSpongeµÄ·Ö²¼Ê½ÄÚ´æÏµÍ³ºÍ·Ö²¼Ê½persistϵͳÊǽôÃܽáºÏµÄÒ»¸öÕûÌå¡£
-
TachyonµÄHA£¨High availability£©ÐèÒªZookeeperµÄÖ§³Ö£¬ÕâÒâζ×ÅÓû§ÓÖÒª¶à°²×°ºÍ¹ÜÀíÒ»¸öZookeeper¼¯Èº£¬¹ÜÀí³É±¾ºÍ³ö´í¿ÉÄÜÐÔÒ²ËæÖ®Ôö¼Ó¡£¶øSpongeµÄHAÊDZ¾Éí¾ÍÌṩµÄ£¬²»ÐèÒªÈκεÚÈý·½ÈíÓ²¼þÖ§³Ö¡£
Tachyon¿ÉÄܵÄÒ»¸öÓŵãÊǶÔÓÚSparkµÄRDD off-heap´æ´¢µÄÖ§³Ö¡£ÎÒÃÇÒ²¿¼ÂǹýÌṩͬÑùµÄ½Ó¿Ú¸øSparkʹÓã¬ÈÃSpark°ÑSpongeµ±×öTachyonÒ»ÑùÀ´ÓᣠĿǰÎÒÃÇÔÝʱûÓаÑÌṩÕâ¸öÈÎÎñ×÷ÎªÖØµã£¬Ö÷ÒªÔÒòÊÇ£¬SparkĿǰ¶ÔÓÚTachyon off-heapµÄ´æ´¢»¹ÔÚʵÑé½×¶Î£¬²¢ÇÒ²»ÊǶÔËùÓÐ workload¶¼ÓÐperformanceÌá¸ß¡£ |