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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
TiDB ÔÚתתµÄÒµÎñʵս
 
  6443  次浏览      32
 2019-1-23  
 
±à¼­ÍƼö:
±¾ÎÄÀ´×ÔÓÚwww.v2ex.com,TiDB ÊÇÒ»¿î¶¨Î»ÓÚÔÚÏßÊÂÎñ´¦Àí/ÔÚÏß·ÖÎö´¦ÀíµÄÈÚºÏÐÍÊý¾Ý¿â²úÆ·£¬ÊµÏÖÁËÒ»¼üˮƽÉìËõ£¬Ç¿Ò»ÖÂÐԵĶั±¾Êý¾Ý°²È«£¬·Ö²¼Ê½ÊÂÎñ£¬ÊµÊ± OLAP µÈÖØÒªÌØÐÔ¡£Í¬Ê±¼æÈÝ MySQL ЭÒéºÍÉú̬£¬Ç¨ÒƱã½Ý£¬ÔËά³É±¾¼«µÍ¡£

¿ªÆª

ÊÀ½ç¼¶µÄ¿ªÔ´·Ö²¼Ê½Êý¾Ý¿â TiDB ×Ô 2016 Äê 12 ÔÂÕýʽ·¢²¼µÚÒ»¸ö°æ±¾ÒÔÀ´£¬ÒµÄÚÖî¶à¹«Ë¾Öð²½ÒýÈëʹÓ㬲¢È¡µÃ¹ã·ºÈϿɡ£

¶ÔÓÚ»¥ÁªÍø¹«Ë¾£¬Êý¾Ý´æ´¢µÄÖØÒªÐÔ²»ÑÔ¶øÓ÷¡£ÔÚ NewSQL Êý¾Ý¿â³öÏÖ֮ǰ£¬Ò»°ã²ÉÓõ¥»úÊý¾Ý¿â£¨±ÈÈç MySQL £©×÷Ϊ´æ´¢£¬Ëæ×ÅÊý¾ÝÁ¿µÄÔö¼Ó£¬¡°·Ö¿â·Ö±í¡±ÊÇÔçÍíÃæÁÙµÄÎÊÌ⣬¼´Ê¹ÓÐÖîÈç MyCat¡¢ShardingJDBC µÈÓÅÐãµÄÖмä¼þ£¬¡°·Ö¿â·Ö±í¡±»¹ÊǸø RD ºÍ DBA ´øÀ´½Ï¸ßµÄ³É±¾£» NewSQL Êý¾Ý¿â³öÏÖºó£¬ÓÉÓÚËü²»½öÓÐ NoSQL ¶Ôº£Á¿Êý¾ÝµÄ¹ÜÀí´æ´¢ÄÜÁ¦¡¢»¹Ö§³Ö´«Í³¹ØÏµÊý¾Ý¿âµÄ ACID ºÍ SQL£¬ËùÒÔ¶ÔÒµÎñ¿ª·¢À´Ëµ£¬´æ´¢ÎÊÌâÒѾ­±äµÃ¸ü¼Ó¼òµ¥ÓѺ㬽ø¶ø¿ÉÒÔ¸üרעÓÚÒµÎñ±¾Éí¡£¶ø TiDB£¬ÕýÊÇ NewSQL µÄÒ»¸ö½Ü³ö´ú±í£¡

Õ¾ÔÚÒµÎñ¿ª·¢µÄÊӽǣ¬TiDB ×îÎüÒýÈ˵óÌØÐÔÊÇ£º

Ö§³Ö MySQL ЭÒ飨¿ª·¢½ÓÈë³É±¾µÍ£©£»

100% Ö§³ÖÊÂÎñ£¨Êý¾ÝÒ»ÖÂÐÔʵÏÖ¼òµ¥¡¢¿É¿¿£©£»

ÎÞÏÞË®Æ½ÍØÕ¹£¨²»±Ø¿¼ÂÇ·Ö¿â·Ö±í£©¡£

»ùÓÚÕ⼸´óÌØÐÔ£¬TiDB ÔÚÒµÎñ¿ª·¢ÖÐÊÇÖµµÃÍÆ¹ãºÍʵ¼ùµÄ£¬µ«ÊÇ£¬Ëü±Ï¾¹²»ÊÇ´«Í³µÄ¹ØÏµÐÍÊý¾Ý¿â£¬ÒÔÖÂÎÒÃǶԹØÏµÐÍÊý¾Ý¿âµÄһЩʹÓþ­ÑéºÍ»ýÀÛ£¬ÔÚ TiDB ÖÐÊÇ´æÔÚ²îÒìµÄ£¬ÏÖÖ÷Òª²ûÊö¡°ÊÂÎñ¡±ºÍ¡°²éѯ¡±Á½·½ÃæµÄ²îÒì¡£

TiDB ÊÂÎñºÍ MySQL ÊÂÎñµÄ²îÒì

MySQL ÊÂÎñºÍ TiDB ÊÂÎñ¶Ô±È

ÔÚ TiDB ÖÐÖ´ÐеÄÊÂÎñ b£¬·µ»ØÓ°ÏìÌõÊýÊÇ 1 £¨ÈÏΪÒѾ­Ð޸ijɹ¦£©£¬µ«ÊÇÌá½»ºó²éѯ£¬status È´²»ÊÇÊÂÎñ b Ð޸ĵÄÖµ£¬¶øÊÇÊÂÎñ a Ð޸ĵÄÖµ¡£

¿É¼û£¬MySQL ÊÂÎñºÍ TiDB ÊÂÎñ´æÔÚÕâÑùµÄ²îÒ죺

MySQL ÊÂÎñÖУ¬¿ÉÒÔͨ¹ýÓ°ÏìÌõÊý£¬×÷ΪдÈ루»òÐ޸ģ©ÊÇ·ñ³É¹¦µÄÒÀ¾Ý£»¶øÔÚ TiDB ÖУ¬ÕâÈ´ÊDz»¿ÉÐеģ¡

×÷Ϊ¿ª·¢ÕßÎÒÃÇÐèÒª¿¼ÂÇÏÂÃæµÄÎÊÌ⣺

ͬ²½ RPC µ÷ÓÃÖУ¬Èç¹ûÐèÒªÑϸñÒÀÀµÓ°ÏìÌõÊýÒÔÈ·ÈÏ·µ»ØÖµ£¬Äǽ«ÈçºÎÊǺã¿

¶à±í²Ù×÷ÖУ¬Èç¹ûÐèÒªÑϸñÒÀÀµÄ³¸öÖ÷±íÊý¾Ý¸üнá¹û£¬×÷ΪÊÇ·ñ¸üУ¨»òдÈ룩ÆäËû±íµÄÅжÏÒÀ¾Ý£¬ÄÇÓÖ½«ÈçºÎÊǺã¿

Ô­Òò·ÖÎö¼°½â¾ö·½°¸

¶ÔÓÚ MySQL£¬µ±¸üÐÂijÌõ¼Ç¼ʱ£¬»áÏÈ»ñÈ¡¸Ã¼Ç¼¶ÔÓ¦µÄÐм¶Ëø£¨ÅÅËûËø£©£¬»ñÈ¡³É¹¦Ôò½øÐкóÐøµÄÊÂÎñ²Ù×÷£¬»ñȡʧ°ÜÔò×èÈûµÈ´ý¡£

¶ÔÓÚ TiDB£¬Ê¹Óà Percolator ÊÂÎñÄ£ÐÍ£º¿ÉÒÔÀí½âΪÀÖ¹ÛËøÊµÏÖ£¬ÊÂÎñ¿ªÆô¡¢ÊÂÎñÖж¼²»»á¼ÓËø£¬¶øÊÇÔÚÌύʱ²Å¼ÓËø¡£²Î¼û ÕâÆªÎÄÕ£¨ TiDB ÊÂÎñËã·¨£©¡£

Æä¼òÒªÁ÷³ÌÈçÏ£º

ÔÚÊÂÎñÌá½»µÄ PreWrite ½×¶Î£¬µ±¡°Ëø¼ì²é¡±Ê§°Üʱ£ºÈç¹û¿ªÆô³åÍ»ÖØÊÔ£¬ÊÂÎñÌá½»½«»á½øÐÐÖØÊÔ£»Èç¹û먦Æô³åÍ»ÖØÊÔ£¬½«»áÅ׳öдÈë³åÍ»Òì³£¡£

¿É¼û£¬¶ÔÓÚ MySQL£¬ÓÉÓÚÔÚдÈë²Ù×÷ʱ¼ÓÉÏÁËÅÅËûËø£¬±äÏཫ²¢ÐÐÊÂÎñ´ÓÂß¼­ÉÏ´®Ðл¯£»¶ø¶ÔÓÚ TiDB£¬ÊôÓÚÀÖ¹ÛËøÄ£ÐÍ£¬ÔÚÊÂÎñÌύʱ²Å¼ÓËø£¬²¢Ê¹ÓÃÊÂÎñ¿ªÆôʱ»ñÈ¡µÄ¡°È«¾Öʱ¼ä´Á¡±×÷Ϊ¡°Ëø¼ì²é¡±µÄÒÀ¾Ý¡£

ËùÒÔ£¬ÔÚÒµÎñ²ãÃæ±ÜÃâ TiDB ÊÂÎñ²îÒìµÄ±¾ÖÊÔÚÓÚ±ÜÃâËø³åÍ»£¬¼´£¬µ±Ç°ÊÂÎñÖ´ÐÐʱ£¬²»²úÉú±ðµÄÊÂÎñʱ¼ä´Á£¨ÎÞÆäËûÊÂÎñ²¢ÐУ©¡£´¦Àí·½Ê½ÎªÊÂÎñ´®Ðл¯¡£

TiDB ÊÂÎñ´®Ðл¯

ÔÚÒµÎñ²ã£¬¿ÉÒÔ½èÖú·Ö²¼Ê½Ëø£¬ÊµÏÖ´®Ðл¯´¦Àí£¬ÈçÏ£º

»ùÓÚ Spring ºÍ·Ö²¼Ê½ËøµÄÊÂÎñ¹ÜÀíÆ÷ÍØÕ¹

ÔÚ Spring Éú̬Ï£¬spring-tx Öж¨ÒåÁËͳһµÄÊÂÎñ¹ÜÀíÆ÷½Ó¿Ú£ºPlatformTransactionManager£¬ÆäÖÐÓлñÈ¡ÊÂÎñ£¨ getTransaction £©¡¢Ìá½»£¨ commit £©¡¢»Ø¹ö£¨ rollback £©Èý¸ö»ù±¾·½·¨£»Ê¹ÓÃ×°ÊÎÆ÷ģʽ£¬ÊÂÎñ´®Ðл¯×é¼þ¿É×öÈçÏÂÉè¼Æ£º

ÆäÖУ¬¹Ø¼üµãÓУº

³¬Ê±Ê±¼ä£ºÎª±ÜÃâËÀËø£¬Ëø±ØÐëÓг¬Ê±Ê±¼ä£»Îª±ÜÃâËø³¬Ê±µ¼ÖÂÊÂÎñ²¢ÐУ¬ÊÂÎñ±ØÐëÓг¬Ê±Ê±¼ä£¬¶øÇÒËø³¬Ê±Ê±¼ä±ØÐë´óÓÚÊÂÎñ³¬Ê±Ê±¼ä£¨Ê±¼ä²î×îºÃÔÚÃë¼¶£©¡£

¼ÓËøÊ±»ú£ºTiDB ÖС°Ëø¼ì²é¡±µÄÒÀ¾ÝÊÇÊÂÎñ¿ªÆôʱ»ñÈ¡µÄ¡°È«¾Öʱ¼ä´Á¡±£¬ËùÒÔ¼ÓËøÊ±»ú±ØÐëÔÚÊÂÎñ¿ªÆôǰ¡£

ÊÂÎñÄ£°å½Ó¿ÚÉè¼Æ

Òþ²Ø¸´ÔÓµÄÊÂÎñÖØÐ´Âß¼­£¬±©Â¶¼òµ¥ÓÑºÃµÄ API£º

TiDB ²éѯºÍ MySQL µÄ²îÒì

ÔÚ TiDB ʹÓùý³ÌÖУ¬Å¼¶û»áÓÐÕâÑùµÄÇé¿ö£¬Ä³¼¸¸ö×ֶν¨Á¢ÁËË÷Òý£¬µ«ÊDzéѯ¹ý³Ì»¹ÊǺÜÂý£¬ÉõÖÁ²»¾­¹ýË÷Òý¼ìË÷¡£

Ë÷Òý»ìÏýÐÍ£¨¾ÙÀý£©

±í½á¹¹£º

CREATE TABLE `t_test` (
`id` bigint(20) NOT NULL DEFAULT '0' COMMENT 'Ö÷¼ü id',
`a` int(11) NOT NULL DEFAULT '0' COMMENT 'a',
`b` int(11) NOT NULL DEFAULT '0' COMMENT 'b',
`c` int(11) NOT NULL DEFAULT '0' COMMENT 'c',
PRIMARY KEY (`id`),
KEY `idx_a_b` (`a`,`b`),
KEY `idx_c` (`c`)
) ENGINE=InnoDB;

 

²éѯ£ºÈç¹ûÐèÒª²éѯ (a=1 ÇÒ b=1 £©»ò c=2 µÄÊý¾Ý£¬ÔÚ MySQL ÖУ¬sql ¿ÉÒÔдΪ£ºSELECT id from t_test where (a=1 and b=1) or (c=2);£¬MySQL ×ö²éѯÓÅ»¯Ê±£¬»á¼ìË÷µ½ idx_a_b ºÍ idx_c Á½¸öË÷Òý£»µ«ÊÇÔÚ TiDB £¨ v2.0.8-9 £©ÖУ¬Õâ¸ö sql »á³ÉΪһ¸öÂý SQL£¬ÐèÒª¸ÄдΪ£º

SELECT id from t_test where (a=1 and b=1) UNION SELECT id from t_test where (c=2);

С½á£ºµ¼Ö¸ÃÎÊÌâµÄÔ­Òò£¬¿ÉÒÔÀí½âΪ TiDB µÄ sql ½âÎö»¹ÓÐÓÅ»¯¿Õ¼ä¡£

ÀäÈÈÊý¾ÝÐÍ£¨¾ÙÀý£©

±í½á¹¹£º

CREATE TABLE `t_job_record` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'Ö÷¼ü id',
`job_code` varchar(255) NOT NULL DEFAULT '' COMMENT 'ÈÎÎñ code',
`record_id` bigint(20) NOT NULL DEFAULT '0' COMMENT '¼Ç¼ id',
`status` tinyint(3) NOT NULL DEFAULT '0' COMMENT 'Ö´ÐÐ״̬:0 ´ý´¦Àí',
`execute_time` bigint(20) NOT NULL DEFAULT '0' COMMENT 'Ö´ÐÐʱ¼ä£¨ºÁÃ룩',
PRIMARY KEY (`id`),
KEY `idx_status_execute_time` (`status`,`execute_time`),
KEY `idx_record_id` (`record_id`)
) ENGINE=InnoDB COMMENT='Òì²½ÈÎÎñ job'

Êý¾Ý˵Ã÷£º

a. ÀäÊý¾Ý£¬status=1 µÄÊý¾Ý£¨ÒѾ­´¦Àí¹ýµÄÊý¾Ý£©£»

b. ÈÈÊý¾Ý£¬status=0 ²¢ÇÒ execute_time<= µ±Ç°Ê±¼ä µÄÊý¾Ý¡£

Âý²éѯ£º¶ÔÓÚÈÈÊý¾Ý£¬Êý¾ÝÁ¿Ò»°ã²»´ó£¬µ«ÊDzéѯƵ¶ÈºÜ¸ß£¬¼ÙÉ赱ǰ£¨ºÁÃë¼¶£©Ê±¼äΪ£º1546361579646£¬ÔòÔÚ MySQL ÖУ¬²éѯ sql Ϊ£º

SELECT * FROM t_job_record where status =0 and execute_time< = 1546361579646

Õâ¸öÔÚ MySQL ÖкܸßЧµÄ²éѯ£¬ÔÚ TiDB ÖÐËäȻҲ¿É´ÓË÷Òý¼ìË÷£¬µ«ÆäºÄʱȴ²»¾¡ÈËÒ⣨°ÙÍò¼¶Êý¾ÝÁ¿£¬ºÄʱ°ÙºÁÃë¼¶£©¡£

Ô­Òò·ÖÎö£ºÔÚ TiDB ÖУ¬µ×²ãË÷Òý½á¹¹Îª LSM-Tree£¬ÈçÏÂͼ£º

µ±´ÓÄÚ´æ¼¶µÄ C0 ²ã²éѯ²»µ½Êý¾Ýʱ£¬»áÖð²ãɨÃèÓ²ÅÌÖи÷²ã£»ÇÒ merge ²Ù×÷ΪÒì²½²Ù×÷£¬Ë÷ÒýÊý¾Ý¸üÐÂ»á´æÔÚÒ»¶¨µÄÑÓ³Ù£¬¿ÉÄÜ´æÔÚÎÞЧË÷Òý¡£ÓÉÓÚÖð²ãɨÃèºÍÒì²½ merge£¬Ê¹µÃ²éѯЧÂʽϵ͡£

ÓÅ»¯·½Ê½£º¾¡¿ÉÄÜËõС¹ýÂË·¶Î§£¬±ÈÈç½áºÏÒì²½ job »ñÈ¡¼Ç¼ƵÂÊ£¬ÔÚ±£Ö¤²»ÒÅ©Êý¾ÝµÄǰÌáÏ£¬ºÏÀíÉèÖà execute_time É¸Ñ¡Çø¼ä£¬ÀýÈç 1 Сʱ£¬sql ¸ÄдΪ£º

SELECT * FROM t_job_record where status =0 and execute_time> 1546357979646 and execute_time<= 1546361579646

ÓÅ»¯Ð§¹û£ººÄʱ 10 ºÁÃë¼¶±ð£¨ÒÔÏ£©¡£

¹ØÓÚ²éѯµÄÆô·¢

ÔÚ»ùÓÚ TiDB µÄÒµÎñ¿ª·¢ÖУ¬ÏÈÞðÆú´«Í³¹ØÏµÐÍÊý¾Ý¿â´øÀ´µÄ¶Ô sql ÏÈÈëΪÖ÷µÄÀí½â»ò¾­Ñ飬½÷É÷Éè¼ÆÃ¿Ò»¸ö sql£¬Èç DBA ËùÌᳫ£ºÉè¼Æ sql ʱÎñ±Ø¹Ø×¢Ö´Ðмƻ®£¬±ØÒªÊ±Çë½Ì DBA¡£

ºÍ MySQL Ïà±È£¬TiDB µÄµ×²ã´æ´¢ºÍ½á¹¹¾ö¶¨ÁËÆäÌØÊâÐԺͲîÒìÐÔ£»µ«ÊÇ£¬TiDB Ö§³Ö MySQL ЭÒ飬ËüÃÇÒ²´æÔÚһЩ¹²Í¬Ö®´¦£¬±ÈÈçÔÚ TiDB ÖÐʹÓá°Ô¤±àÒ롱ºÍ¡°Åú´¦Àí¡±£¬Í¬Ñù¿ÉÒÔ»ñµÃÒ»¶¨µÄÐÔÄÜÌáÉý¡£

·þÎñ¶ËÔ¤±àÒë

ÔÚ MySQL ÖУ¬¿ÉÒÔʹÓà PREPARE stmt_name FROM preparable_stm ¶Ô sql Óï¾ä½øÐÐÔ¤±àÒ룬ȻºóʹÓà EXECUTE stmt_name [USING @var_name [, @var_name] ...] Ö´ÐÐÔ¤±àÒëÓï¾ä¡£Èç´Ë£¬Í¬Ò» sql µÄ¶à´Î²Ù×÷£¬¿ÉÒÔ»ñµÃ±È³£¹æ sql ¸ü¸ßµÄÐÔÄÜ¡£

mysql-jdbc Ô´ÂëÖУ¬ÊµÏÖÁ˱ê×¼µÄ Statement ºÍ PreparedStatement µÄͬʱ£¬»¹ÓÐÒ»¸öServerPreparedStatement ʵÏÖ£¬ServerPreparedStatement ÊôÓÚPreparedStatementµÄÍØÕ¹£¬ÈýÕß¶Ô±ÈÈçÏ£º

ÈÝÒ×·¢ÏÖ£¬PreparedStatement ºÍ Statement µÄÇø±ðÖ÷񻂿±ðÔÚÓÚ²ÎÊý´¦Àí£¬¶ø¶ÔÓÚ·¢ËÍÊý¾Ý°ü£¬µ÷Ó÷þÎñ¶ËµÄ´¦ÀíÂß¼­ÊÇÒ»Ñù£¨»òÀàËÆ£©µÄ£»¾­²âÊÔ£¬¶þÕßËÙ¶ÈÏ൱¡£Æäʵ£¬PreparedStatement ²¢²»ÊÇ·þÎñ¶ËÔ¤´¦ÀíµÄ£»ServerPreparedStatement ²ÅÊÇÕæÕýµÄ·þÎñ¶ËÔ¤´¦Àí£¬ËÙ¶ÈÒ²½Ï PreparedStatement ¿ì£»ÆäʹÓó¡¾°Ò»°ãÊÇ£ºÆµ·±µÄÊý¾Ý¿â·ÃÎÊ£¬sql ÊýÁ¿ÓÐÏÞ£¨Óлº´æÌÔÌ­²ßÂÔ£¬Ê¹Óò»Ò˻ᵼÖÂÁ½´Î IO £©¡£

Åú´¦Àí

¶ÔÓÚ¶àÌõÊý¾ÝдÈ룬³£Óà sql Ϊ insert ¡­ values (¡­),(¡­)£»¶ø¶ÔÓÚ¶àÌõÊý¾Ý¸üУ¬Òà¿ÉÒÔʹÓà update ¡­ case ¡­ when ¡­ then ¡­ end À´¼õÉÙ IO ´ÎÊý¡£µ«ËüÃǶ¼ÓÐÒ»¸öÌØµã£¬Êý¾ÝÌõÊýÔ½¶à£¬sql Ô½¼Ó¸´ÔÓ£¬sql ½âÎö³É±¾Ò²¸ü¸ß£¬ºÄʱÔö³¤¿ÉÄܸßÓÚÏßÐÔÔö³¤¡£¶øÅú´¦Àí£¬¿ÉÒÔ¸´ÓÃÒ»Ìõ¼òµ¥ sql£¬ÊµÏÖÅúÁ¿Êý¾ÝµÄдÈë»ò¸üУ¬ÎªÏµÍ³´øÀ´¸üµÍ¡¢¸üÎȶ¨µÄºÄʱ¡£

¶ÔÓÚÅú´¦Àí£¬×÷Ϊ¿Í»§¶Ë£¬java.sql.Statement Ö÷Òª¶¨ÒåÁËÁ½¸ö½Ó¿Ú·½·¨£¬addBatch ºÍ executeBatch À´Ö§³ÖÅú´¦Àí¡£

Åú´¦ÀíµÄ¼òÒªÁ÷³Ì˵Ã÷ÈçÏ£º

¾­ÒµÎñÖÐʵ¼ù£¬Ê¹ÓÃÅú´¦Àí·½Ê½µÄдÈ루»ò¸üУ©£¬±È³£¹æ insert ¡­ values(¡­),(¡­)£¨»ò update ¡­ case ¡­ when ¡­ then ¡­ end£©ÐÔÄܸüÎȶ¨£¬ºÄʱҲ¸üµÍ¡£

   
6443 ´Îä¯ÀÀ       32
Ïà¹ØÎÄÕÂ

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

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

Êý¾ÝÖÎÀí¡¢Êý¾Ý¼Ü¹¹¼°Êý¾Ý±ê×¼
MongoDBʵս¿Î³Ì
²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
PostgreSQLÊý¾Ý¿âʵսÅàѵ