| Èç¹ûÄãÒѾÍê³ÉÁË×Ô¼ºÐµÄMongoDBÓ¦ÓóÌÐòµÄ¿ª·¢£¬²¢ÇÒÏÖÔÚÕý×¼±¸½«Ëü²¿Êð½ø²úÆ·ÖУ¬ÄÇôÄãºÍÄãµÄÔËÓªÍŶÓÐèÒªÌÖÂÛһЩ¹Ø¼üµÄÎÊÌ⣺
1.×î¼Ñ²¿Êðʵ¼ùÊÇʲô£¿
2.ΪÁËÈ·±£Ó¦ÓóÌÐòÂú×ãËüËù±ØÐëµÄ·þÎñ²ã´ÎÎÒÃÇÐèÒª¼à¿ØÄÄЩ¹Ø¼üÖ¸±ê£¿
3.ÈçºÎÄܹ»È·¶¨Ìí¼Ó·ÖƬµÄʱ»ú£¿
4.ÓÐÄÄЩ¹¤¾ß¿ÉÒÔ¶ÔÊý¾Ý¿â½øÐб¸·ÝºÍ»Ö¸´£¿
5.ÔõÑù²ÅÄܰ²È«µØ·ÃÎÊËùÓÐеÄʵʱ´óÊý¾Ý£¿
±¾ÎĽéÉÜÁËÓ²¼þÑ¡Ôñ¡¢À©Õ¹¡¢HAºÍ¼à¿Ø¡£Ôڲ鿴ÏêϸÐÅϢ֮ǰ£¬Ê×ÏÈÈÃÎÒÃÇ´¦ÀíÒ»¸ö×î³£¼ûµÄÎÊÌ⣺
²¿ÊðMongoDBºÍ²¿ÊðRDBMSÓÐʲô²»Í¬£¿
Äã»á·¢ÏÖMongoDB×÷Ϊһ¸öÎĵµÊý¾Ý¿â£¬ËüºÍÄãÒѾÊìϤµÄ¹ØÏµÐÍÊý¾Ý¿â·ÖÏíÁ˺ܶàͬÑùµÄ¸ÅÄî¡¢²Ù×÷¡¢²ßÂԺ͹ý³Ì¡£¼à¿Ø¡¢Ë÷Òý¡¢µ÷ÕûºÍ±¸·ÝµÈÄÚÈݵÄÁ÷³ÌºÍ×î¼Ñʵ¼ù¿ÉÒÔÓ¦Óõ½MongoDB¡£Í¬Ê±Èç¹ûÄãÏëÒª¿ªÊ¼×Ô¼ºµÄÅàѵ£¬ÄÇô¿ÉÒÔ´ÓMongoDB´óѧÖлñÈ¡µ½À´×ÔÓÚ¿ª·¢ÕߺÍDBAµÄÃâ·ÑÔÚÏ߿γ̡£
ϵͳÐÔÄܺÍÈÝÁ¿¹æ»®ÊÇÁ½¸öÖØÒªµÄÖ÷Ì⣬Èκβ¿Êð¶¼ÐèÒª´¦ÀíÕâÁ½¸öÎÊÌ⣬ÎÞÂÛÊÇRDBMS»¹ÊÇNoSQLÊý¾Ý¿â¶¼ÊÇÈç´Ë¡£×÷Ϊ¹æ»®µÄÒ»²¿·ÖÎÒÃÇÓ¦¸Ã¶ÔÊý¾Ý¾í£¨volume£©¡¢ÏµÍ³¸ºÔØ¡¢ÐÔÄÜ£¨ÍÌÍÂÁ¿¼°ÑÓ³Ùʱ¼ä£©ºÍÈÝÁ¿ÀûÓý¨Á¢»ùÏß¡£ÕâЩ»ùÏßÓ¦¸Ã·´Ó³Äã¶ÔÊý¾Ý¿âÔÚ²úÆ·»·¾³ÖÐÖ´ÐеŤ×÷¸ºÔØµÄÆÚÍû£¬ËüÃÇÓ¦¸ÃËæ×ÅÓû§Êý¡¢Ó¦ÓóÌÐò¹¦ÄÜ¡¢ÐÔÄÜSLA»òÕ߯äËûÒòËØµÄ±ä»¯¶¨ÆÚµØµ÷Õû¡£
»ùÏß½«°ïÖúÄãÀí½âϵͳÄÄЩʱºòÊǰ´ÕÕÉè¼ÆÔËÐеģ¬ÄÄЩʱºò¿ÉÄÜ»áÓ°ÏìÓû§ÌåÑéÖÊÁ¿»òÕ߯äËû¾ö¶¨ÐÔϵͳÒòËØµÄÎÊÌ⿪ʼ¸¡ÏÖ¡£
ÏÂÃæ½«»áÌÖÂ۹ؼüµÄ²¿ÊðÒªËØ£¬°üÀ¨Ó²¼þ¡¢À©Õ¹ºÍHA£¬Í¬Ê±»¹»áÌÖÂÛΪÁËά³Ö×î¼ÑµÄϵͳÐÔÄÜÄãÓ¦¸Ã¼à¿ØÄÄЩÄÚÈÝ¡£
Çå³þ×Ô¼ºµÄ¹¤×÷¼¯
ÔÚΪ²¿ÊðMongoDBÓÅ»¯Ó²¼þÔ¤ËãµÄʱºò£¬RAMÓ¦¸ÃÊÇ»òÕß½Ó½üÓÚÁбíµÄµÚһλ¡£
ΪÁËʵÏÖµÍÑÓ³ÙµÄÊý¾Ý¿â²Ù×÷MongoDBÖй㷺ʹÓÃÁËRAM¡£ÔÚMongoDBÖУ¬ËùÓеÄÊý¾Ý¶¼ÊÇͨ¹ýÄÚ´æÓ³ÉäÎļþ¶ÁÈ¡ºÍ²Ù×÷µÄ¡£´ÓÄÚ´æÖжÁÈ¡Êý¾ÝÊÇʹÓÃÄÉÃëÀ´¶ÈÁ¿µÄ£¬¶ø´Ó´ÅÅÌÖжÁÈ¡Êý¾ÝÔòÊÇʹÓúÁÃë¶ÈÁ¿µÄ£¬ËùÒÔ´ÓÄÚ´æÖжÁÈ¡Êý¾Ý¼¸ºõ±È´Ó´ÅÅÌÖжÁȡҪ¿ìÁËÊ®Íò±¶¡£
ÔÚÕý³£²Ù×÷ÆÚ¼ä×îÆµ·±·ÃÎʵÄÊý¾ÝºÍË÷ÒýµÄ¼¯ºÏ³ÆÎª¹¤×÷¼¯£¬ÔÚÀíÏëµÄÇé¿öÏÂËüÃÇÓ¦¸ÃÔÚRAMÖС£¹¤×÷¼¯¿ÉÄÜÊÇÕû¸öÊý¾Ý¿âµÄһС²¿·Ö£¬ÀýÈç×î½üµÄʼþËù¹ØÁªµÄÓ¦ÓóÌÐòÊý¾Ý»òÕß×î³£·ÃÎʵÄÈÈÃŲúÆ·¡£
MongoDBÊÔͼ·ÃÎÊÊý¾Ýʱ·¢ÉúµÄÒ³Ãæ´íÎó²¢²»»á±»¼ÓÔØµ½RAMÖС£Èç¹ûÓпÕÏÐÄڴ棬ÄÇô²Ù×÷ϵͳ½«¶¨Î»µ½´ÅÅÌÉϵÄÒ³Ãæ²¢½«ËüÃÇÖ±½Ó¼ÓÔØµ½ÄÚ´æÖС£µ«ÊÇÈç¹ûûÓпÕÏÐÄڴ棬ÄÇô²Ù×÷ϵͳ±ØÐ뽫ÄÚ´æÖеÄÒ»¸öÒ³ÃæÐ´Èë´ÅÅÌ£¬È»ºó½«±»ÇëÇóµÄÒ³Ãæ¶ÁÈ¡µ½ÄÚ´æÖС£Õâ¸öÁ÷³Ì±È·ÃÎÊÒѾ´æÔÚÓÚÄÚ´æÖеÄÊý¾ÝÒªÂý¡£
ÓÐЩ²Ù×÷¿ÉÄÜ»áÔÚ²»¾Òâ¼ä´ÓÄÚ´æÖÐÇå³ý´óÁ¿µÄ¹¤×÷¼¯£¬ÕâÑù»á¶ÔÐÔÄܲúÉúÑÏÖØÓ°Ïì¡£ÀýÈ磬¶ÔÓÚÒ»¸öä¯ÀÀÊý¾Ý¿âÖÐËùÓÐÎĵµµÄ²éѯ¶øÑÔ£¬Èç¹ûÊý¾Ý¿â±È·þÎñÆ÷ÉϵÄRAM´ó£¬ÄÇô½«»áµ¼ÖÂÎĵµ±»¶ÁÈëÄÚ´æ¶ø¹¤×÷¼¯±»Ð´³öµ½´ÅÅÌ¡£ÔÚÏîÄ¿µÄģʽÉè¼Æ½×¶ÎΪ×Ô¼ºµÄ²éѯ¶¨ÒåºÏÊʵÄË÷Òý½«»á¼«´óµØ½µµÍÕâÖÖ·çÏÕ·¢ÉúµÄ¿ÉÄÜÐÔ¡£MongoDB˵Ã÷²Ù×÷Äܹ»Îª²éѯ¼Æ»®ºÍË÷ÒýµÄʹÓÃÌṩÐÅÏ¢¡£
MongoDB·þÎñ״̬ÃüÁîÖаüº¬ÁËÒ»¸öÓÐÓõÄÊä³ö£º¹¤×÷¼¯Îĵµ£¬ËüÌṩÁËÒ»¸öMongoDBʵÀý¹¤×÷¼¯µÄ¹ÀËã´óС¡£ÔËÓªÍŶӿÉÒÔ°´ÕÕ¸ø¶¨µÄʱ¼ä¸ú×ÙʵÀý·ÃÎʵÄÒ³ÃæÊý£¬°üÀ¨¹¤×÷¼¯ÖÐ×î¾ÉµÄÎĵµµ½×îеÄÎĵµÖ®¼äµÄÔËÐÐʱ¼ä¡£Í¨¹ý¸ú×ÙÕâЩָ±êÎÒÃÇÄܹ»·¢ÏÖʲôʱºò¹¤×÷¼¯»á½Ó½üÏÖÔÚµÄRAMÏÞÖÆ´Ó¶ø»ý¼«µØ²ÉÈ¡Ðж¯È·±£ÏµÍ³ÊÇ¿ÉÀ©Õ¹µÄ¡£
MongoDB¹ÜÀí·þÎñºÍmongostatÄܹ»°ïÖúÓû§¼à¿ØÄÚ´æµÄʹÓÃÇé¿ö£¬ÏÂÃæÎÒÃǽ«»á¶Ô´Ë½øÐÐÏêϸµØÌÖÂÛ¡£
´æ´¢ºÍ´ÅÅÌI/O
MongoDB²»ÐèÒª¹²Ïí´æ´¢£¨ÀýÈç´æ´¢ÇøÓòÍøÂ磩¡£MongoDBÄܹ»Ê¹Óñ¾µØ¸½¼ÓµÄ´æ´¢ºÍ¹Ì̬ӲÅÌ£¨SSD£©¡£
MongoDBÖеĴ󲿷ִÅÅÌ·ÃÎÊģʽ²¢Ã»ÓÐ˳ÐòÊôÐÔ£¬ÕâÑù×öµÄ½á¹û±ãÊǿͻ§¿ÉÒÔͨ¹ýʹÓÃSSD»ñµÃ¾Þ´óµÄÐÔÄÜÊÕÒæ¡£ÎÒÃÇÒѾ¹Û²ìµ½Ê¹ÓÃSATA
SSDºÍPCI»ñµÃµÄÁ¼ºÃ½á¹ûºÍÇ¿´óµÄÐÔÄÜ¡£ÉÌÒµSATAÐýתÇý¶¯Æ÷¿ÉÒÔæÇÃÀ³É±¾¸ü¸ßµÄÐýתÇý¶¯Æ÷£¬ÕâµÃÒæÓÚMongoDBµÄ·Ç˳Ðò·ÃÎÊģʽ£ºÓ¦¸Ã¸üÓÐЧµØÊ¹ÓÃÔ¤Ë㽫ÆäÓÃÓÚ¸ü¶àµÄRAM»òÕßSSDÉÏ£¬¶ø²»ÊǸü¶àµØÓÃÓÚ°º¹óµÄÐýתÇý¶¯Æ÷ÉÏ¡£
ÔÚÊý¾ÝÎļþÊÜÒæÓÚSSDµÄͬʱ£¬MongoDBµÄÈÕ¼ÇÎļþÓÉÓÚÆä×ÔÉíµÄ¸ß˳ÐòµÄдÊôÐÔ³ÉΪÁË¿ìËÙ³£¹æ´ÅÅ̵ÄÒ»¸öºÜºÃµÄºòÑ¡¡£
´ó¶àÊýMongoDB²¿ÊðÓ¦¸ÃʹÓÃRAID-10¡£RAID-5ºÍRAID-6ûÓÐÌṩ×ã¹»µÄÐÔÄÜ¡£RAID-0ÌṩÁ˺ܺõÄдÐÔÄÜ£¬µ«ÊǶÁÐÔÄÜÓÐÏÞ£¬ÈÝ´íÄÜÁ¦Ò²²»×ã¡£²¿ÊðµÄMongoDB¿ÉÒÔͨ¹ý¸±±¾¼¯£¨ÏÂÃæ½«»áÌÖÂÛ£©ÌṩºÜÇ¿µÄÊý¾Ý¿ÉÓÃÐÔ£¬Í¬Ê±Óû§Ó¦¸Ã¿¼ÂÇʹÓÃRAIDºÍÆäËûÒòËØÂú×ãÏëÒªµÄSLA¿ÉÓÃÐÔ¡£
ËäÈ»ÎÒÃÇÓ¦¸ÃÉè¼ÆMongoDBϵͳÈÃËüµÄ¹¤×÷¼¯ÊʺÏÓÚÄڴ棬µ«ÊÇ´ÅÅÌI/OÒÀÈ»ÊÇÒ»¸ö¹Ø¼üµÄÐÔÄÜ¿¼ÂÇ¡£MongoDB»á¶¨ÆÚµØ½«Ð´²Ù×÷ˢе½´ÅÅ̲¢Ìá½»µ½Èռǣ¬ËùÒÔÔÚд¸ºÔؽÏÖØµÄʱºò»ù´¡µÄ´ÅÅÌ×Óϵͳ¿ÉÄÜ»á±äµÃ²»¿°Öظº¡£iostatÃüÁî¿ÉÒÔÓÃÓÚÏÔʾ¸ß´ÅÅÌÀûÓÃÂʺ͹ý¶àµÄд¶ÓÁС£
CPUÑ¡Ôñ¡ª¡ªËÙ¶È»¹ÊÇÄںˣ¿
MongoDBµÄÐÔÄÜͨ³£²»»á°ó¶¨µ½CPUÉÏ¡£ÒòΪMongoDBºÜÉÙ»áÓöÐèÒªÀûÓôóÁ¿Äں˵Ť×÷¸ºÔØ£¬±ÈÆðʱÖÓËٶȽÏÂýµÄ¶àºË·þÎñÆ÷×îºÃµÄÑ¡ÔñÊÇÓиü¿ìµÄʱÖÓËÙ¶È¡£
ÎÞÂÛÊÇʲôϵͳ£¬²âÁ¿CPUµÄÀûÓÃÂʶ¼ÊǷdz£ÖØÒªµÄ¡£Èç¹û¹Û²ìµ½CPUµÄÀûÓÃÂʺܸߵ«ÊDz¢Ã»ÓгöÏÖ´ÅÅ̱¥ºÍ»òÕßÒ³Ãæ´íÎóÕâÑùµÄÆäËûÎÊÌ⣬ÄÇôϵͳÖпÉÄÜ»á´æÔÚ²»Ñ°³£µÄÎÊÌâ¡£ÀýÈ磬һ¸ö´æÔÚÎÞÏÞÑ»·µÄMapReduce¹¤×÷»òÕßÒ»¸öûÓн¨Á¢Á¼ºÃË÷Òý¾Í¶Ô¹¤×÷¼¯ÖеĴóÁ¿Îĵµ½øÐÐÅÅÐòºÍ¹ýÂ˵IJéѯ¶¼¿ÉÄܻᵼÖÂCPUÀûÓÃÂʵÄìÉý£¬µ«ÊÇËüÃÇÈ´²»»áÒý·¢´ÅÅÌϵͳÎÊÌâ»òÕßÒ³Ãæ´íÎó¡£ÓÃÓÚ¼à¿ØCPUÀûÓÃÂʵŤ¾ß½«ÔÚÏÂÃæ½éÉÜ¡£
À©Õ¹Êý¾Ý¿â¡ª¡ªºÎʱÀ©Õ¹ºÍÈçºÎÀ©Õ¹£¿
MongoDBͨ¹ýÒ»ÖÖ³ÆÎªShardingµÄ¼¼ÊõÌṩÁËˮƽÀ©Õ¹ÄÜÁ¦¡£ShardingÄܹ»ÔÚ¶à¸öÎïÀí·ÖÇø£¨³ÆÎªÆ¬£©Ö®¼ä·Ö·¢Êý¾Ý¡£Sharding¿ÉÒÔÈÃMongoDBµÄ²¿Êð½â¾öµ¥¸ö·þÎñÆ÷µÄÓ²¼þÏÞÖÆ¶ø²»ÐèÒªÔö¼ÓÓ¦ÓóÌÐòµÄ¸´ÔÓÐÔ£¬½â¾öµÄÓ²¼þÏÞÖÆ°üÀ¨RAMºÍ´ÅÅÌI/OµÄÆ¿¾±¡£

MongoDB×Ô¶¯·ÖƬºÍÓ¦ÓóÌÐòµÄ͸Ã÷¶È
ÔÚϵͳ×ÊÔ´±äµÃÓÐÏÞ֮ǰʵÏÖ·ÖÆ¬ÊǷdz£ÈÝÒ׵ģ¬Òò´ËÈÝÁ¿¹æ»®ºÍÖ÷¶¯¼à¿ØÔÚÐèÒª³É¹¦µØÀ©Õ¹Ó¦ÓóÌÐòʱÊǷdz£ÖØÒªµÄÔªËØ¡£
ÔÚÏÂÃæµÄ³¡¾°ÖÐÓû§Ó¦¸Ã¿¼ÂDz¿ÊðÒ»¸ö·ÖƬµÄMongoDB¼¯Èº£º
1.RAMÏÞÖÆ£ºÏµÍ³»î¶¯¹¤×÷¼¯µÄ´óСºÜ¿ì¾Í»á³¬¹ýϵͳRAMµÄ×î´óÈÝÁ¿¡£
2.´ÅÅÌ I/OÏÞÖÆ£ºÏµÍ³ÓдóÁ¿µÄд»î¶¯£¬µ«ÊDzÙ×÷ϵͳдÊý¾ÝµÄËٶȲ»¹»¿ì£¬ÎÞ·¨Âú×ãÐèÇó£»Í¬Ê±/»òÕßI/O´ø¿íÏÞÖÆÁËÊý¾ÝдÈë´ÅÅ̵ÄËÙ¶È¡£
3.´æ´¢ÏÞÖÆ£º Êý¾Ý¼¯½Ó½ü»òÕß³¬¹ýÁËϵͳÖеĵ¥¸ö½ÚµãµÄ´æ´¢ÈÝÁ¿¡£
ShardingµÄÄ¿±êÖ®Ò»¾ÍÊÇÔÚ¶ą̀·þÎñÆ÷Ö®¼äÒ»Öµطַ¢Êý¾Ý¡£Èç¹û·þÎñÆ÷×ÊÔ´µÄÀûÓÃÂʲ¢²»ÊǽüËÆµØÏàµÈ£¬ÄÇô¿ÉÄÜ»á´æÔÚÒý·¢µ÷¶È´íÎóµÄDZÔÚÎÊÌâ¡£ÀýÈ磬ѡÔñÒ»¸öÔã¸âµÄ·ÖƬ¼ü¿ÉÄܻᵼÖ²»Æ½ºâµÄÊý¾Ý·Ö·¢¡£ÔÚÕâÖÖÇé¿öÏ£¬¼´±ã²»ÊÇËùÓеĵ«ÊǴ󲿷ֲéѯҲ»á±»µ¼Ïòµ½ÕýÔÚ¹ÜÀíÊý¾ÝµÄÄǸöµ¥¶ÀµÄMongoDB¡£
ÁíÍ⣬MongoDB¿ÉÄÜ»áÊÔÍ¼ÖØÐ·ַ¢Îĵµ´Ó¶øÔÚ·þÎñÆ÷Ö®¼äʵÏÖ¸ü¼ÓÀíÏëµÄƽºâ¡£ËäÈ»ÖØÐ·ַ¢×îÖÕ»áʵÏÖÒ»ÖÖ¸ü¼ÓÁîÈËÂúÒâµÄÎĵµ·Ö·¢£¬µ«ÊÇÓдóÁ¿ÓëÖØÐÂÆ½ºâÊý¾ÝÏà¹ØµÄ¹¤×÷£¬ÕâЩ¹¤×÷±¾Éí¾ÍÓпÉÄÜ»á²úÉúÓ°Ïìµ¼ÖÂÎÞ·¨ÊµÏÖÔ¤ÆÚÐÔÄܵÄSLA¡£
ͨ¹ýÔËÐÐdb.currentOp()ÃüÁÄ㽫Äܹ»Á˽⼯ȺÏÖÔÚÕýÔÚÖ´ÐÐÄÄЩ¹¤×÷£¬°üÀ¨¿ç·ÖƬµÄÎĵµÔÙÆ½ºâ¡£
ΪÁËÈ·±£Êý¾ÝÄܹ»ÔÚ¼¯ÈºÖеÄËùÓÐ·ÖÆ¬¼ä¾ùÔȵطַ¢£¬Ñ¡ÔñÒ»¸öÓÅÐãµÄ·ÖƬ¼üÊǷdz£ÖØÒªµÄ¡£MongoDBÎĵµÖаüº¬ÁËÒ»¸ö¹ØÓÚÈçºÎÑ¡ÔñÓÅÐã·ÖƬ¼üµÄ½Ì³Ì¡£
MongoDB¸´ÖƼ¯µÄ¸ß¿ÉÓÃÐÔ
MongoDBʹÓñ¾µØ¸´ÖÆÎ¬»¤¸´ÖƼ¯Ö®¼äµÄ¶à¸öÊý¾Ý¸±±¾¡£¸´ÖƼ¯¿ÉÒÔͨ¹ý·¢ÏÖ´íÎ󣨷þÎñÆ÷¡¢ÍøÂç¡¢OS»òÕßÊý¾Ý¿â£©ºÍ×Ô¶¯»¯¹ÊÕÏÐÞ¸´±ÜÃâÍ£»úʱ¼ä¡£ÍƼöµÄ×ö·¨ÊÇ£ºËùÓеÄMongoDB²¿Êð¶¼Ó¦¸ÃÅäÖø´ÖÆ¡£

ʹÓÃMongoDB¸´ÖƼ¯×Ô»Ö¸´
¶ÔÖ÷½ÚµãÊý¾Ý¿âµÄÐ޸IJÙ×÷»áͨ¹ýÃûΪoplogµÄÈÕÖ¾±»¸´ÖƵ½ÆäËû¶þ¼¶½ÚµãÉÏ¡£oplog°üº¬ÁËÒ»¸öÅÅÐòµÄÃݵȲÙ×÷µÄ¼¯ºÏ£¬¸Ã¼¯ºÏÖеIJÙ×÷»áÔÚ¶þ¼¶½ÚµãÉÏÖØ·Å¡£oplogµÄ´óСÊÇ¿ÉÅäÖõģ¬Ä¬ÈÏÊÇ¿ÉÓôÅÅ̿ռäµÄ5%¡£
ÕýÈçÏÂÃæµÄͼ±íËù²ûÊöµÄ£¬¿ÉÒÔͨ¹ý¶¨Î»¸±±¾Îª·þÎñÆ÷¡¢»ú¼Ü¡¢Êý¾ÝÖÐÐĹÊÕϺÍÍøÂç·ÖÇøÌṩÈÝ´íÐÔ¡£

¸´ÖÆÑÓ³ÙÊÇ×÷ΪÕý³£ÔËÐеÄÒ»²¿·ÖÀ´¼à¿ØµÄ¡£Ëü±íʾµÄÊǽ«Ö÷½ÚµãÉϵÄÒ»¸öд²Ù×÷¸´ÖƵ½¶þ¼¶½ÚµãÉÏËù»¨·ÑµÄʱ¼ä¡£Ò»¶¨µÄÑÓ³ÙÊÇÕý³£µÄ£¬µ«ÊÇÈç¹û¸´ÖÆÑÓ³ÙÔö³¤£¬Ôò¿ÉÄÜ»áÒý·¢ÎÊÌâ¡£¸´ÖÆÑÓ³Ù²úÉúµÄµäÐÍÔÒò°üÀ¨ÍøÂçÑÓ³Ù¡¢Á¬½ÓÎÊÌâºÍ´ÅÅÌÑÓ³Ù£¨ÀýÈç¶þ¼¶½ÚµãµÄÍÌÍÂÁ¿ÁÓÓÚÖ÷½Úµã£©¡£
¸´ÖÆ×´Ì¬ºÍ¸´ÖÆÑÓ³Ù¿ÉÒÔͨ¹ýreplSetGetStatusÃüÁîÖØÐ»ָ´¡£
ÈÕÖ¾¸ÅÊö
×÷ΪËùÓв¿ÊðµÄÒ»²¿·Ö£¬Ó¦¸Ã¼à¿ØÓ¦ÓóÌÐòºÍÊý¾Ý¿âµÄÈÕÖ¾ÒԱ㷢ÏÖ´íÎ󲢲鿴ÆäËûµÄϵͳÐÅÏ¢¡£½«Ó¦ÓóÌÐòºÍÊý¾Ý¿âµÄÈÕÖ¾¹ØÁªÆðÀ´ÊǷdz£ÖØÒªµÄ£¬ÒòΪÕâÑù²ÅÄܾö¶¨Ó¦ÓóÌÐòÖеĻ×îÖÕÊÇ·ñÐèÒª¶ÔϵͳÖÐµÄÆäËûÎÊÌ⸺Ôð¡£ÀýÈ磬Óû§Ð´Èë·åÖµ¿ÉÄÜ»áÔö¼ÓдÈëMongoDBµÄÈÝÁ¿£¬Õâ·´¹ýÀ´¿ÉÄÜ»áѹ¿åÏÂÃæµÄ´æ´¢ÏµÍ³¡£Èç¹ûûÓÐÓ¦ÓóÌÐòºÍÊý¾Ý¿âÈÕÖ¾µÄ¹ØÁª£¬ÄÇô¿ÉÄÜÒª»¨·Ñ¸ü¶àµÄʱ¼ä²ÅÄܹ»È·¶¨Ð´ÈëÈÝÁ¿µÄÔö³¤ÊÇÓ¦ÓóÌÐòµÄÎÊÌâ¶ø²»ÊÇÔËÐÐÔÚMongoDBÖеÄijЩ½ø³ÌµÄÎÊÌâ¡£
MongoDB ¼à¿Ø¹¤¾ß
MongoDB°üº¬Á˸÷ÖÖ¼à¿Ø¹¤¾ß£¬ÈÃÄãÄܹ»»ý¼«µØ¹ÜÀíϵͳµÄÔËÐкÍÐÔÄÜ¡£
MongoDB¹ÜÀí·þÎñ (MMS)
MongoDB¹ÜÀí·þÎñ£¨MMS£©ÌṩÁËÔÆ¼à¿ØºÍ±¸·Ý·þÎñ£¬°ïÖúÓû§ÓÅ»¯¼¯Èº¡¢½â¾öÐÔÄÜÎÊÌâ¡¢¼õÇáÔËά·çÏÕ¡£MMS±¸·Ý·þÎñ½«ÔÚÒÔºóµÄÎÄÕÂÖÐÌÖÂÛ¡£
MMS¼à¿ØÖ§³Öͼ±í¡¢×Ô¶¨ÒåÒDZíÅ̺Í×Ô¶¨Ò徯¸æ¡£MMS½öÐèÒª×îµÍÏ޶ȵݲװºÍÅäÖá£Óû§ÔÚËùÓеÄMongoDBʵÀýÉϰ²×°Ò»¸ö±¾µØ´úÀí£¬¸Ã´úÀí»á¸ú×ÙÓëÊý¾Ý¿âʹÓÃÇé¿öÏà¹ØµÄÊý°Ù¸ö¹Ø¼üµÄ½¡¿µÖ¸±ê£¬°üÀ¨£º
1.²Ù×÷Êý£¨Op Counters£©¡ªÃ¿ÃëÖÓÖ´ÐеIJÙ×÷µÄÊýÁ¿
2.Äڴ棨Memory£©¡ªMongoDBÕýÔÚʹÓõÄÊý¾ÝÁ¿
3.Ëø°Ù·Ö±È£¨Lock Percent£©¡ªÐ´ËøÏûºÄʱ¼äµÄ°Ù·Ö±È
4.ºǫ́ˢУ¨Background Flush£©¡ª½«Êý¾Ýˢе½´ÅÅÌÏûºÄµÄƽ¾ùʱ¼ä
5.Á¬½Ó£¨Connections£©¡ªMongoDBµ±Ç°´ò¿ªµÄÁ¬½ÓµÄÊýÁ¿
6.¶ÓÁУ¨Queues£©¡ªµÈ´ýÔËÐеIJÙ×÷µÄÊýÁ¿
7.Ò³Ãæ´íÎó£¨Page Faults£©¡ª´ÅÅ̵ÄÒ³Ãæ´íÎóÊý
8.¸´ÖÆ£¨Replication£©¡ªÖ÷½Úµã²Ù×÷ÈÕÖ¾µÄ³¤¶ÈÒÔ¼°¸´ÖÆÑÓʱ
9.ÈÕÖ¾£¨Journal£©¡ªÐ´ÈëÈÕÖ¾µÄÊý¾ÝÁ¿

ÕâЩָ±ê»á±»°²È«µØ±¨¸æ¸øMMS·þÎñ£¬¸æËßËüËüÃÇÊÇÔÚÄÄÀï´¦Àí¡¢¾ÛºÏ¡¢Í¨ÖªµÄ£¬²¢ÔÚä¯ÀÀÆ÷ÖпÉÊÓ»¯ÏÔʾ¡£Óû§Äܹ»ÈÝÒ׵ظù¾Ý¸÷ÖÖÐÔÄÜÖ¸±êÁ˽âËûÃǼ¯ÈºµÄ½¡¿µ×´¿ö¡£
Ó²¼þ¼à¿Ø
Munin nodeÊÇÒ»¸ö¿ªÔ´Èí¼þ³ÌÐò£¬Ëü¿ÉÒÔ¼à¿ØÓ²¼þ²¢±¨¸æ´ÅÅ̺ÍRAMµÄʹÓÃÇé¿öÕâÑùµÄÖ¸±ê¡£MMSÄܹ»ÊÕ¼¯Munin
node²úÉúµÄÕâЩÊý¾Ý£¬²¢ÔÚMMSÒDZíÅÌÖн«ÕâЩÊý¾ÝºÍÆäËûÊý¾ÝÒ»ÆðÕ¹ÏÖ¸øÓû§¡£ÒòΪÿһ¸öÓ¦ÓóÌÐòºÍ²¿Êð¶¼ÊÇΨһµÄ£¬ËùÒÔÓû§Ó¦¸ÃΪ´ÅÅÌÀûÓÃÂʵķåÖµ¡¢ÍøÂç»î¶¯µÄÖ÷Òª±ä»¯ºÍƽ¾ù²éѯ³¤¶È/ÏìӦʱ¼äµÄÔö³¤´´½¨¾¯±¨¡£
Êý¾Ý¿â·ÖÎö¹¤¾ß
MongoDBÌṩÁËÒ»¸öÐÔÄÜ·ÖÎö¹¤¾ß£¬¸Ã¹¤¾ßÄܹ»¼Ç¼Êý¾Ý¿â²Ù×÷Ïà¹ØµÄϸÁ£¶ÈÐÅÏ¢¡£·ÖÎö¹¤¾ß¿ÉÒԼǼËùÓÐʼþµÄÐÅÏ¢£¬Ò²Äܹ»Ö»¼Ç¼ÄÇЩ³ÖÐøÊ±¼ä³¬³öÁËÅäÖÃãÐÖµµÄʼþµÄÐÅÏ¢¡£·ÖÎöÊý¾Ý´æ´¢ÔÚÒ»¸ö¹Ì¶¨¼¯ºÏÖУ¬Óû§Äܹ»ºÜÈÝÒ׵شÓÖÐËÑË÷Ïà¹ØµÄʼþ¡ª¡ª²éѯÕâ¸ö¼¯ºÏ¿ÉÄܱȳ¢ÊÔ×ÅÈ¥½âÎöÈÕÖ¾Îļþ¸ü¼ÓÈÝÒס£
ÆäËûµÄ¼à¿Ø¹¤¾ß
Óи÷ÖÖ¸÷ÑùµÄ¼à¿Ø¹¤¾ßÈÃÄãÄܹ»´ÓÆäËûµÄ·½ÃæÉîÈëÀí½âMongoDBϵͳ¡£
mongotop ÊÇËæMongoDBÌṩµÄÒ»¸ö¹¤¾ß£¬ËüÄܹ»¸ú×Ù²¢±¨¸æÒ»¸öMongoDB¼¯Èºµ±Ç°µÄ¶Á¡¢Ð´»î¶¯¡£
mongostat ÊÇËæMongoDBÌṩµÄÁíÒ»¸ö¹¤¾ß£¬ËüΪËùÓеIJÙ×÷ÌṩÁËÒ»¸öÈ«Ãæ¸ÅÀÀ£¬°üÀ¨¸üС¢²åÈëµÄ¼ÆÊý£¬Ò³Ãæ´íÎó¡¢Ë÷ÒýµÄ¶ªÊ§Çé¿öÒÔ¼°ºÜ¶àÆäËûµÄ¹ØÏµµ½ÏµÍ³½¡¿µµÄÖØÒªÖ¸±ê¡£
Iostat¡¢vmstat¡¢netstatºÍsarÕâÑùµÄLinux¹¤¾ßÒ²ÄÜΪÉîÈë̽Ë÷MongoDBϵͳÌṩÓмÛÖµµÄÐÅÏ¢¡£
¶ÔÓÚWindows»·¾³ÉϵÄÓû§¶øÑÔ£¬ÐÔÄÜ¼à¿ØÆ÷£¨Performance
Monitor£¬Ò»¸öMicrosoft¹ÜÀí¿ØÖÆÌ¨µ¥Ôª£©ÊÇÒ»¸ö·Ç³£ÓÐÓõŤ¾ß£¬¿ÉÒÔÓÃÀ´²âÁ¿¸÷ÖÖÖ¸±ê¡£
Èç¹ûÏëÒª»ñÈ¡¸ü¶àÓë¼à¿Ø¹¤¾ßºÍ¼à¿ØÄÚÈÝÏà¹ØµÄÐÅÏ¢£¬¿ÉÒԲ鿴MongoDBÎĵµÖÐµÄ¼à¿ØÊý¾Ý¿âÏµÍ³Ò³Ãæ¡£
ÅäÖÃMongoDB
Óû§Ó¦¸Ã½«ÅäÖÃÑ¡Ïî´æ´¢µ½MongoDBµÄÅäÖÃÎļþÖС£sysadminsÄܹ»Í¨¹ýÕâÖÖ·½Ê½ÔÚÕû¸ö¼¯ÈºÖ®¼äʵÏÖÒ»ÖÂÐÔµÄÅäÖá£ÅäÖÃÎļþÖ§³ÖMongoDBÃüÁîÐÐËùÖ§³ÖµÄËùÓÐÑ¡Ïî¡£°²×°ºÍÉý¼¶Ó¦¸Ãͨ¹ýÁ÷ÐеŤ¾ß£¨ÀýÈçChefºÍPuppet£©×Ô¶¯Íê³É£¬Í¬Ê±MongoDBÉçÇø»¹Ìṩ²¢Î¬»¤ÁËÕâЩ¹¤¾ßµÄʾÀý½Å±¾¡£
Ò»¸ö»ù´¡µÄMongoDBÅäÖÃÎļþÀàËÆÓÚÏÂÃæµÄÄÚÈÝ£º
fork = true bind_ip = 127.0.0.1 port = 27017 quiet = true dbpath = /srv/mongodb logpath = /var/log/mongodb/mongod.log logappend = true journal = true |
ÄãÄܹ»Í¨¹ýÎĵµÁ˽⵽ÓëMongoDBÅäÖÃÑ¡ÏîÏà¹ØµÄ¸ü¶àÄÚÈÝ¡£ÔÚMongoDBÎĵµ²úƷ˵Ã÷Ò³ÃæÉÏ»¹Î¬»¤×ÅÕë¶Ô²Ù×÷ϵͳ¡¢Îļþϵͳ¡¢´æ´¢É豸ºÍÆäËûϵͳÏà¹ØÖ÷ÌâÌØ¶¨ÅäÖõÄ×îн¨Òé¡£
½áÂÛ
ÔÚ±¾ÎÄÖÐÎÒÃǽéÉÜÁËÄÄЩÓÃÓÚ²¿Êð¹ØÏµÐÍÊý¾Ý¿âµÄ¸ÅÄî¡¢²Ù×÷ºÍÁ÷³Ì¿ÉÒÔ±»Ö±½ÓµØÓ¦Óõ½MongoDBÉÏ£¬Í¬Ê±»¹½éÉÜÁËÓ²¼þÑ¡ÔñºÍ²¿Êð¼°¼à¿ØµÄ×î¼Ñʵ¼ù¡£ÁíÍ⣬ÓйØÓÚËùÓÐÕâЩÖ÷ÌâµÄÏêϸÌÖÂÛ¿ÉÒÔ´ÓMongoDB²Ù×÷Ö¸ÄÏ£¨Ò»¸ö.pdfÎļþ£©ÖлñÈ¡¡£
|