¡¡¡¡NoSQL¸ÅÄî
¡¡¡¡Ëæ×Åweb2.0µÄ¿ìËÙ·¢Õ¹£¬·Ç¹ØϵÐÍ¡¢·Ö²¼Ê½Êý¾Ý´æ´¢µÃµ½ÁË¿ìËٵķ¢Õ¹£¬ËüÃDz»±£Ö¤¹ØϵÊý¾ÝµÄACIDÌØÐÔ¡£NoSQL¸ÅÄîÔÚ2009Äê±»ÌáÁ˳öÀ´¡£NoSQL×î³£¼ûµÄ½âÊÍÊÇ¡°non-relational¡±£¬¡°Not Only SQL¡±Ò²±»ºÜ¶àÈ˽ÓÊÜ¡££¨¡°NoSQL¡±Ò»´Ê×îÔçÓÚ1998Äê±»ÓÃÓÚÒ»¸öÇáÁ¿¼¶µÄ¹ØϵÊý¾Ý¿âµÄÃû×Ö¡££©
¡¡¡¡NoSQL±»ÎÒÃÇÓõÃ×î¶àµÄµ±Êýkey-value´æ´¢£¬µ±È»»¹ÓÐÆäËûµÄÎĵµÐ͵ġ¢Áд洢¡¢Í¼ÐÍÊý¾Ý¿â¡¢xmlÊý¾Ý¿âµÈ¡£ÔÚNoSQL¸ÅÄîÌá³ö֮ǰ£¬ÕâЩÊý¾Ý¿â¾Í±»ÓÃÓÚ¸÷ÖÖϵͳµ±ÖУ¬µ«ÊÇÈ´ºÜÉÙÓÃÓÚweb»¥ÁªÍøÓ¦ÓᣱÈÈçcdb¡¢qdbm¡¢bdbÊý¾Ý¿â¡£
¡¡¡¡´«Í³¹ØϵÊý¾Ý¿âµÄÆ¿¾±
¡¡¡¡´«Í³µÄ¹ØϵÊý¾Ý¿â¾ßÓв»´íµÄÐÔÄÜ£¬¸ßÎȶ¨ÐÍ£¬¾Ã¾ÀúÊ·¿¼Ñ飬¶øÇÒʹÓüòµ¥£¬¹¦ÄÜÇ¿´ó£¬Í¬Ê±Ò²»ýÀÛÁË´óÁ¿µÄ³É¹¦°¸Àý¡£ÔÚ»¥ÁªÍøÁìÓò£¬MySQL³ÉΪÁ˾ø¶Ô¿¿Ç°µÄÍõÕߣ¬ºÁ²»¿äÕŵÄ˵£¬MySQLΪ»¥ÁªÍøµÄ·¢Õ¹×ö³öÁË׿ԽµÄ¹±Ïס£
¡¡¡¡ÔÚ90Äê´ú£¬Ò»¸öÍøÕ¾µÄ·ÃÎÊÁ¿Ò»°ã¶¼²»´ó£¬Óõ¥¸öÊý¾Ý¿âÍêÈ«¿ÉÒÔÇáËÉÓ¦¸¶¡£ÔÚÄǸöʱºò£¬¸ü¶àµÄ¶¼ÊǾ²Ì¬ÍøÒ³£¬¶¯Ì¬½»»¥ÀàÐ͵ÄÍøÕ¾²»¶à¡£
¡¡¡¡µ½ÁË×î½ü10Ä꣬ÍøÕ¾¿ªÊ¼¿ìËÙ·¢Õ¹¡£»ð±¬µÄÂÛ̳¡¢²©¿Í¡¢sns¡¢Î¢²©Öð½¥ÒýÁìwebÁìÓòµÄ³±Á÷¡£ÔÚ³õÆÚ£¬ÂÛ̳µÄÁ÷Á¿ÆäʵҲ²»´ó£¬Èç¹ûÄã½Ó´¥ÍøÂç±È½ÏÔ磬Äã¿ÉÄÜ»¹¼ÇµÃÄǸöʱºò»¹ÓÐÎı¾ÐÍ´æ´¢µÄÂÛ̳³ÌÐò£¬¿ÉÒÔÏëÏóÒ»°ãµÄÂÛ̳µÄÁ÷Á¿Óжà´ó¡£
¡¡¡¡Memcached+MySQL
¡¡¡¡ºóÀ´£¬Ëæ×Å·ÃÎÊÁ¿µÄÉÏÉý£¬¼¸ºõ´ó²¿·ÖʹÓÃMySQL¼Ü¹¹µÄÍøÕ¾ÔÚÊý¾Ý¿âÉ϶¼¿ªÊ¼³öÏÖÁËÐÔÄÜÎÊÌ⣬web³ÌÐò²»ÔÙ½ö½öרעÔÚ¹¦ÄÜÉÏ£¬Í¬Ê±Ò²ÔÚ×·ÇóÐÔÄÜ¡£³ÌÐòÔ±ÃÇ¿ªÊ¼´óÁ¿µÄʹÓûº´æ¼¼ÊõÀ´»º½âÊý¾Ý¿âµÄѹÁ¦£¬ÓÅ»¯Êý¾Ý¿âµÄ½á¹¹ºÍË÷Òý¡£¿ªÊ¼±È½ÏÁ÷ÐеÄÊÇͨ¹ýÎļþ»º´æÀ´»º½âÊý¾Ý¿âѹÁ¦£¬µ«Êǵ±·ÃÎÊÁ¿¼ÌÐøÔö´óµÄʱºò£¬¶ą̀web»úÆ÷ͨ¹ýÎļþ»º´æ²»Äܹ²Ïí£¬´óÁ¿µÄСÎļþ»º´æÒ²´øÁËÁ˱ȽϸߵÄIOѹÁ¦¡£ÔÚÕâ¸öʱºò£¬Memcached¾Í×ÔÈ»µÄ³ÉΪһ¸ö·Ç³£Ê±Éеļ¼Êõ²úÆ·¡£
¡¡¡¡Memcached×÷Ϊһ¸ö¶ÀÁ¢µÄ·Ö²¼Ê½µÄ»º´æ·þÎñÆ÷£¬Îª¶à¸öweb·þÎñÆ÷ÌṩÁËÒ»¸ö¹²ÏíµÄ¸ßÐÔÄÜ»º´æ·þÎñ£¬ÔÚMemcached·þÎñÆ÷ÉÏ£¬ÓÖ·¢Õ¹Á˸ù¾ÝhashËã·¨À´½øÐжą̀Memcached»º´æ·þÎñµÄÀ©Õ¹£¬È»ºóÓÖ³öÏÖÁËÒ»ÖÂÐÔhashÀ´½â¾öÔö¼Ó»ò¼õÉÙ»º´æ·þÎñÆ÷µ¼ÖÂÖØÐÂhash´øÀ´µÄ´óÁ¿»º´æʧЧµÄ±×¶Ë¡£µ±Ê±£¬Èç¹ûÄãÈ¥ÃæÊÔ£¬Äã˵ÄãÓÐMemcached¾Ñ飬¿Ï¶¨»á¼Ó·ÖµÄ¡£
¡¡¡¡MysqlÖ÷´Ó¶Áд·ÖÀë
¡¡¡¡ÓÉÓÚÊý¾Ý¿âµÄдÈëѹÁ¦Ôö¼Ó£¬MemcachedÖ»ÄÜ»º½âÊý¾Ý¿âµÄ¶ÁȡѹÁ¦¡£¶Áд¼¯ÖÐÔÚÒ»¸öÊý¾Ý¿âÉÏÈÃÊý¾Ý¿â²»¿°Öظº£¬´ó²¿·ÖÍøÕ¾¿ªÊ¼Ê¹ÓÃÖ÷´Ó¸´ÖƼ¼ÊõÀ´´ïµ½¶Áд·ÖÀ룬ÒÔÌá¸ß¶ÁдÐÔÄܺͶÁ¿âµÄ¿ÉÀ©Õ¹ÐÔ¡£MysqlµÄmaster-slaveģʽ³ÉΪÕâ¸öʱºòµÄÍøÕ¾±êÅäÁË¡£
¡¡¡¡·Ö±í·Ö¿â
¡¡¡¡Ëæ×Åweb2.0µÄ¼ÌÐø¸ßËÙ·¢Õ¹£¬ÔÚMemcachedµÄ¸ßËÙ»º´æ£¬MySQLµÄÖ÷´Ó¸´ÖÆ£¬¶Áд·ÖÀëµÄ»ù´¡Ö®ÉÏ£¬ÕâʱMySQLÖ÷¿âµÄдѹÁ¦¿ªÊ¼³öÏÖÆ¿¾±£¬¶øÊý¾ÝÁ¿µÄ³ÖÐøÃÍÔö£¬ÓÉÓÚMyISAMʹÓñíËø£¬Ôڸ߲¢·¢Ï»á³öÏÖÑÏÖصÄËøÎÊÌ⣬´óÁ¿µÄ¸ß²¢·¢MySQLÓ¦ÓÿªÊ¼Ê¹ÓÃInnoDBÒýÇæ´úÌæMyISAM¡£Í¬Ê±£¬¿ªÊ¼Á÷ÐÐʹÓ÷ֱí·Ö¿âÀ´»º½âдѹÁ¦ºÍÊý¾ÝÔö³¤µÄÀ©Õ¹ÎÊÌâ¡£Õâ¸öʱºò£¬·Ö±í·Ö¿â³ÉÁËÒ»¸öÈÈÃż¼Êõ£¬ÊÇÃæÊÔµÄÈÈÃÅÎÊÌâÒ²ÊÇÒµ½çÌÖÂÛµÄÈÈÃż¼ÊõÎÊÌâ¡£Ò²¾ÍÔÚÕâ¸öʱºò£¬MySQLÍƳöÁË»¹²»Ì«Îȶ¨µÄ±í·ÖÇø£¬ÕâÒ²¸ø¼¼ÊõʵÁ¦Ò»°ãµÄ¹«Ë¾´øÀ´ÁËÏ£Íû¡£ËäÈ»MySQLÍƳöÁËMySQL Cluster¼¯Èº£¬µ«ÊÇÓÉÓÚÔÚ»¥ÁªÍø¼¸ºõûÓгɹ¦°¸Àý£¬ÐÔÄÜÒ²²»ÄÜÂú×㻥ÁªÍøµÄÒªÇó£¬Ö»ÊÇÔڸ߿ɿ¿ÐÔÉÏÌṩÁ˷dz£´óµÄ±£Ö¤¡£