±à¼ÍƼö: |
±¾´Î½²ÊöÁËUCloud
TiDB Service£¬ÎªÁ˽« TiDB ·þÎñÔËÐÐÔÚ¹«ÓÐÔÆÉÏ×öÁËÄÄЩ¹¤×÷£¬È»ºóÈçºÎΪÁ˰ïÒÑÓÐÓû§½«ÒµÎñÎÞ·ìÇ¨ÒÆµ½
TiDB ÉÏÃæËù×öµÄÁíÍâÒ»¸ö²úÆ·¼°À©Õ¹£¬Ï£Íû¶ÔÄúÓÐËù°ïÖú
±¾ÎÄÀ´×ÔAskTUG£¬ÓÉ»ðÁú¹ûÈí¼þDelores±à¼¡¢ÍƼö¡£ |
|

Ê×ÏȽ² TiDB Service£¬ÎÒÃÇÒÔ·þÎñµÄÐÎʽ°Ñ TiDB ÔËÐÐÔÚ¹«ÓÐÔÆÉÏÃæ£¬Óû§¿´µ½µÄÊÇÒ»¸ö·þÎñ¶ø²»ÊÇÒ»¸öʵÀý¡£TiDB Service ÊÇÒ»¸öÖ§³ÖÔÉú MySQL ÐÒéµÄ¡¢¸ßÐÔÄÜ¡¢¿ç»ú·¿¸ß¿ÉÓᢸ߿ÉÀ©Õ¹µÄ¡¢ÃæÏò Serverless µÄ ·Ö²¼Ê½Êý¾Ý¿â·þÎñ¡£¿ç»ú·¿¸ß¿ÉÓÃÊÇÒòΪÎÒÃÇÔÚ±±¾©²¿ÊðÁËÕâ¸ö·þÎñ£¬±±¾©´ó¸ÅÓÐËÄÎå¸ö»ú·¿£¬ËùÓеÄ×é¼þ¶¼ÊÇ¿ç»ú·¿²¿ÊðµÄ¡£ÔÙ¾ÍÊÇ Serverless£¬ÔÚÔÆÉÏÎÒÃÇÏ£ÍûÈÃÓû§¼òµ¥¿ì½ÝµØÊ¹Óà TiDB £¬ÎÞÐè¹ØÐĵײãµÄÎïÀí×ÊÔ´ºÍ²¿Êðϸ½Ú¡£ÎÒÃÇÕâ¸ö²úÆ·Êǰ´ÐèʹÓú͸¶·ÑµÄ£¬µ±È»×îÖյ͍¼Û»¹Ã»¶¨ÏÂÀ´£¬µ«»ù±¾Éϸù¾ÝʹÓÃÁ¿ºÍ QPS Ö¸±êÀ´¼Æ·Ñ¡£

¼òµ¥¿´Ò»ÏÂÑÝʾ£¬µã»÷²é¿´ Demo 4 ¡£µÚÒ»²½ÊÇ´´½¨ÊµÀý£¬Ö»ÐèÒªÊäÈëÒ»¸öʵÀýµÄÃû³ÆÔÙÊäÈëÒ»¸ö root ÕʺŵÄÃÜÂ룬µã»÷È·¶¨»ù±¾ÉÏ 1-2 ·ÖÖÓÖ®ÄھͿÉÒÔ²¿ÊðºÃÒ»Ì׿ÉÓÃµÄ TiDB ·þÎñ¼¯Èº¡£µÚ¶þ²½ÊÇÌí¼ÓÓû§¡£ÕâÀïÃæÊ×ÏÈÌí¼ÓÒ»¸öÖ»¶ÁÓû§£¬³¢ÊÔÁ¬½ÓÊý¾Ý¿â£¬Á¬ÉÏÈ¥Ö®ºó³¢ÊÔ×Å´´½¨Ò»¸ö DB µ«ÊÇʧ°Ü£¬ÐèÒª·µ»ØÐÞ¸ÄȨÏÞ¡£½ÓÏÂÀ´ÑÝʾһÏ Binlog ͬ²½·þÎñ£¬Ä¬ÈÏÊÇûÓпªÆô Binlog ·þÎñµÄ£¬¿ÉÒÔ¿ªÆôºóÌí¼Ó Binlog Consumer£¬¼òµ¥ÑÝʾһϽ¨ºÃ·þÎñÒÔºóÔÚÔ´ÀïÃæ´´ÔìÒ»¸öÊý¾Ý¿â£¬»áͬ²½µ½´Ó¿âÀïÈ¥¡£TiDB Binlog ±¾À´¾ÍÖ§³Ö MySQL¡¢Pb¡¢ Kafka ÕâЩÐÒ飬ÎÒÃÇ×öÁË×îͨÓÃµÄ MySQL£¬ºóÆÚµü´ú»áÖ§³ÖÆäËûµÄ¸ñʽ¡£Õâ±ßÊÇÔÚÔ´ÀïÃæ´´½¨ÁËÊý¾Ý¿â£¬ÔÚÄ¿±êÀïÃæ¿´µÄʱºòÒѾͬ²½¹ýÀ´ÁË¡£ÑÝʾµ½´Ë½áÊø¡£

ÎÒÃǼòµ¥¿´ÏÂÐÔÄܶԱȣ¬ÌرðÇ¿µ÷Ò»ÏÂÕâÀï×öµÄÊÇ TiDB ²¿ÊðÔÚÎïÀí»úÉÏ£¬UCloud ²¿ÊðÔÚ Service ʱµÄÐÔÄܶԱȣ¬²¢Ã»ÓÐΪÁËÈÃÐÔÄÜÊý¾ÝºÃ¿´¶ø×öÒ»Ð©ÌØÊâµÄ¿¼ÂÇ£¬¾ÍÊǼòµ¥µØ×öÁËÒ»¸ö Sysbench µÄ²âÊÔ¡£Õâ¸ö²âÊÔÅܵÄÊÇ 2.1.4 °æ±¾£¬ 3 ʵÀý²¿Êð£¬ÎïÀí»úһģһÑù£¬Èí¼þ²¿ÊðÁË 3 ¸ö TiDB£¬ 3 ¸ö TiKV£¬ 3 ¸ö PD£¬È«²¿¿ç»ú·¿²¿Êð¡£Âã»ú¸ú UCloud TiDB Service ¶Ô±ÈÐÔÄÜ»ù±¾Ò»Ö£¬²¢Ã»ÓÐʲôËðºÄ¡£

½ÓÏÂÀ´½²Ò»ÏÂΪÁËʵÏÖ´ó¼ÒÔÚÑÝʾÉÏ¿´µ½µÄЧ¹û£¬ÎÒÃǺǫ́×öÁËÄÄЩÊÂÇé¡£

Ê×ÏÈÎÒÃÇ×öÁËÒ»¸ö·Ö²¼Ê½Êý¾Ý¿âµÄ PaaS ƽ̨£¬Õâ¸öƽ̨Óм¸²¿·Ö£º
µÚÒ»²¿·ÖÊÇÎïÀí»úµÄ×ÊÔ´¹ÜÀí£¬°üÀ¨Ã¿´Î´´½¨ÊµÀýʱµÄ×ÊÔ´·ÖÅäÒÔ¼°ÊµÀý×ÊÔ´»ØÊյȵȲÙ×÷¡£
µÚ¶þ²¿·ÖÊǼ¯Èº²¿Êð¡£´´½¨µÄ¹ý³ÌÏÈѡȡºÏÊʵÄÎïÀí»ú£¬¼ì²â×ÊÔ´ÊÇ·ñÂú×ã¡£Èç¹ûÂú×㽫·ÖÅäÌØ¶¨µÄ×ÊÔ´£¬È»ºóÔÙÖ´ÐÐÏàÓ¦µÄ´´½¨¹¤×÷£¬°üÀ¨´´½¨ TiDB¡¢TiKV¡¢PD ½Úµã£¬´´½¨ÏàÓ¦µÄ¼à¿Ø»¹ÓÐ LB ²ã£¬ÒÔ¼° VPC ÍøÂç³õʼ»¯µÄ¹¤×÷¡£
µÚÈý²¿·Ö¼¯ÈºÎ¬»¤¡£Èç¹ûÔÚij¸ö½Úµã·¢ÏÖij̨ÎïÀí»úÓÐÒì³££¬¾Í°ÑËùÓзþÎñÇ¨ÒÆµ½ÆäËûµÄ½ÚµãÉÏÈ¥£¬ÎÒÃÇÖ÷ÒªÊÇ×öµÄÊÇÇ¨ÒÆ¡¢À©Õ¹¡¢ËõÈÝÕâЩ¹¤×÷¡£ÓÒ±ßÊÇ¼à¿Ø¸æ¾¯£¬Õâ¿éÎÒÃǸÄÔì±È½Ï¶à¡£
µÚËIJ¿·ÖÊÇÔËÓª·ÖÎö£¬Ò²¾ÍÊÇÔËÓªºÍ±¸·Ý¹ÜÀí¡£ÎÒÃÇĬÈÏÒ»Ìì»á±¸·ÝÒ»´ÎÊý¾Ý£¬Ä¿Ç°Óû§»¹²»ÄÜ×Ô¼ºÑ¡Ôñʲôʱºò±¸·Ý¡¢Ôõô±¸·Ý£¬ºóÆÚ»á×öÒ»¸ö±È½ÏÏêϸµÄ±¸·Ý²ßÂÔ¡£±ÈÈçĿǰĬÈÏÖйúʱ¼äÁ賿Èýµã¿ÉÄÜÊÇÒ»¸ö±È½Ï¿ÕÏеÄʱ¼ä£¬ÎÒÃÇÑ¡ÔñÔÚÕâ¸öʱ¼äµã×ö±¸·Ý£¬µ«ÓÐЩ·þÎñÔÚÕâ¸öʱ¼ä¿ÉÄÜÊǸ߷åÆÚ£¬±¸·Ý¶ÔÏßÉÏÒµÎñ»á²úÉúÒ»¶¨µÄÓ°Ïì¡£×ó±ßÊÇ MySQL ±¾À´µÄÊý¾ÝÁ÷£¬ÎÒÃǼÓÁËÒ»²ã¸ºÔؾùºâ£¬Ò»ÊÇ°Ñ IP µØÖ·Í³Ò»³ÉÒ»¸ö£¬¶þÊÇÔÚ¹«ÓÐÔÆ·þÎñÔËάÉÏ×öһЩÕʺźÍϵͳ·½ÃæµÄ¿ØÖÆ¡£

ÕâÒ»Ò³½²µÄÊÇ¿ç»ú·¿¸ß¿ÉÓ᣻ú·¿Ä¿Ç°²¿ÊðÔÚ±±¾©£¬´ó¸ÅÓÐÎå¸öÓõıȽ϶࣬ËùÓеĻúÆ÷¡¢½Úµã¡¢×é¼þ¶¼ÊÇ¿ç»ú·¿²¿ÊðµÄ¡£µ¥Ò»µØÖ·µÄºÃ´¦ÊÇÒµÎñ²»ÐèÒª¹Ø×¢¶à¸öµØÖ·£¬¼´²»ÐèÒªÔÚµØÖ·Ö®¼äÇл»£¬´ËÍâÓÐÁËͳһµØÖ·µÄÐéÄâ IP ºóÔËάʱҲ²»ÐèÒª¿¼ÂǵØÖ·£¬ËùÓеIJÙ×÷¶ÔÓû§Íêȫ͸Ã÷¡£

µ¯ÐÔÀ©ÈÝÕâ¿é±È½ÏÁé»î£¬Óû§Ê¹ÓõÄʱºò²»ÐèÒª¹Ø×¢ CPU¡¢×ÊÔ´£¬¶øÊÇÏë·Å¶àÉÙÊý¾Ý¾Í·Å¶àÉÙÊý¾Ý£¬ÏëÔõôÓþÍÔõôÓá£Ëæ×ÅÒµÎñµÄÔö¼õ£¬ºǫ́ÓÐÔËÓª¼à¿Ø£¬¼ÙÈç·¢ÏÖÓÐһ̨ʵÀý×ÊԴʹÓÃÂʱȽϽôÕÅ»òÕßÄÚ´æÊ¹Ó÷dz£ÂúµÄʱºò»áÀ©ÈÝ£¬Õâ¿éÒ²Ñϸñ±£Ö¤ÊÇ¿ç»ú·¿µÄ¡£

»¹ÓоÍÊÇ¶Ô¼à¿ØµÄ¸ÄÔì¡£TiDB ±¾ÉíÌṩµÄ²¿Êð·þÎñÀïÃæ£¬°üÀ¨ Grafana£¬Prometheus£¬¶¼Êǵ¥½ÚµãµÄ£¬ÓзçÏÕ¡£µ«ÊÇһЩÔËÓªµÄ¾ö²ßÊǸù¾Ý¼à¿ØÊý¾ÝÀ´µÄ£¬±ÈÈçij¸öʵÀýÄÚ´æ·Ç³£½ôÕÅʱÐèÒªÀ©ÈÝ£¬ÕâʱºòÈç¹ûÒ»¸ö½Úµã³öÎÊÌ⣬Õû¸öÔËÓª²ßÂÔºóÃæ¾Íû·¨Ö§³ÅÁË¡£ËùÒÔÊ×ÏÈÎÒÃǸÄÔìÁË Grafana£¨Ëü×ÔÉíû°ì·¨Ê¹Óà TiDB ×÷Ϊ´æ´¢£©µÄÔ´Â룬¸ÄµôÁË Grafana ÀïµÄ´óÁ¿ Multi-schema Óï¾ä²¢ÇÒ°Ñ×ֶθÄС£¬Ê¹Ö®¿ÉÒÔʹÓà TiDB ´æ´¢ÔªÊý¾Ý¡£TiDB Ö§³Ö Grafana ÒÔºó¾Í¿ÉÒÔ×ö¸ß¿ÉÓü¯Èº£¬Õâ¿éÎÒÃÇÒ²×öÁ˽¨¿â¡¢»¥³â¡¢Provisioning µÄ¹¤×÷¡£Ö®ºó»¹¸ÄÔìÁË Prometheus ºÍ Alertmanager£¬È«²¿¶¼±ä³ÉÁ˼¯Èº»¯µÄģʽ¡£

½ÓÏÂÀ´ÊÇÒ»¸öÓû§ÊµÀý¼à¿ØÏµÍ³£¬×ó±ßÓÐÒ»¸ö LB£¬Á½¸ö Grafana ½Úµã£¬Í¨¹ý LB Á¬µ½ Prometheus£¬ ´æ´¢È«²¿ÊÇÔ¶³Ì£¬ÒÔʵÏָ߿ÉÓá£

ÕâÊǹÜÀíµÄͼ£¬×îÓÒ±ß¼à¿ØÁËËùÓÐÎïÀí»úÉ쵀 Exporters£¬²¢ÇÒ½«ËùÓÐÓû§µÄ Prometheus Êý¾Ý»ã¾ÛÔÚÒ»Æð¡£ÎªÁ衄 Alertmanager ¼æÈݵ½ UCloud ¸æ¾¯ÌåϵÀïÃæ£¬ÎÒÃÇÒ²×öÁËһЩÐ޸ġ£

½ÓÏÂÀ´·ÖÏíÒ»ÏÂÎÒÃÇ¶Ô Binlog Driver ×öµÄÊÂÇé¡£µ±Ê±ÓÐÒ»¸öÓû§³¡¾°£¬ÐèÒª°ÑÊý¾Ýͬ²½µ½×Ô¼ºµÄ´óÊý¾ÝÀïÃæÈ¥£¬Ëû¿ÉÒÔͨ¹ý Json ¸ñʽ¼òµ¥µØ½âÎö Kafka ÀïµÄÊý¾Ý£¬µ«ÊÇ TiDB Driver ĬÈÏÊä³öµÄ¸ñʽÊÇ PB ¸ñʽ£¬Óû§Ã»°ì·¨¼òµ¥µØÅäÖÃʹÓá£ÎÒÃÇ¾Í°Ñ Kafka ÀïÃæµÄÊý¾Ý¶Á³öÀ´ºóд³É Json ¸ñʽÔÙдµ½ÁíÍâÒ»¸ö Kafka Àµ±Ê± Binlog ×é¼þ»¹Ã»¿ªÔ´£¬Èç¹û Binlog ¿ªÔ´µÄ»°¾Í¿ÉÒÔÖ±½Ó¸ÄÔ´ÂëÁË¡£

ÎÒÃÇÄÚ²¿Ê¹Óà TiDB ºÜ³¤Ê±¼äÁË£¬Ò²×öÁËһЩ´òÄ¥ÒÔ¼°»ýÀÛ£¬ÏÖÔÚÓÐÈý¸ö¼¯Èº¡£±È½Ï´óµÄÊǵÚÒ»Ì×¼¯Èº£¬ÓÐ 13 ̨ SATA£¬18 ̨ SSD£¬3 ̨ NVMe£¬ÉÏÃæ²¿ÊðÁË 60 ¶à¸öʵÀý£¬À´×ÔÄÚ²¿ 30 ¶à¸öÒµÎñ²¿ÃÅ£¬´ó¸ÅÓÐ 8 TB µÄÊý¾ÝÔÚÉÏÃæ£¬Ê¹ÓÃÁËÒ»Äê¶àÔËÐзdz£Æ½ÎÈ¡£µÚ¶þÌ×¼¯ÈºÓÐ 3 ̨ SATA¡¢6 ̨ SSD£¬Êý¾ÝÁ¿ÓÐ 1TB£¬ÒѾÔËÐÐÁ˾Ÿö¶àÔ¡£µÚÈýÌ×¼¯ÈºÊǸßÐÔÄܼ¯Èº£¬3 ̨ SATA£¬9 ̨ NVMe£¬ÓÐ 3TB Êý¾Ý£¬QPS ÔÚÒ»Íò×óÓÒ£¬Ò²ÒѾÎȶ¨ÔËÐÐÁËÎå¸ö¶àÔ¡£Ò»Äê¶àµÄʵ¼ùÎÒÃǾÀú¹ýÎïÀí»úµÄå´»ú¡¢Òì³£ÖØÆô£¬µ«ÕûÌå¿´À´ TiDB ÔËÐеķdz£Æ½ÎÈ£¬Ã»ÓÐÓ°Ïìµ½Óû§µÄÒµÎñ£¬ÎÒÃǾõµÃ TiDB »¹ÊÇ×öµÄ·Ç³£ºÃµÄ¡£

µÚÈý²¿·Ö½²Ò»Ï UDTS£¬ÕâÊÇÎÒÃǸù¾Ý TiDB ÒýÉê³öÀ´µÄÒ»¸ö²úÆ·¡£

Óû§³£ÎʵÄÒ»¸öÎÊÌâÊÇÔõô°Ñ MySQL ¼¯ÈºÀïµÄÒµÎñºÍÊý¾Ýƽ»¬µØÇ¨ÒƵ½ TiDB ÉÏÃæÈ¥¡£ÆäÊµÇ¨ÒÆ»ù±¾¿ÉÒÔ·ÖΪËĸö²½Ö裬µÚÒ»ÊÇÈ«Á¿Ç¨ÒÆ£¬µÚ¶þÊÇÔöÁ¿Í¬²½£¬µÚÈýÊÇÒµÎñÑéÖ¤£¬µÚËÄÊÇÒµÎñÇл»¡£

TiDB ËäÈ»¸ß¶È¼æÈÝ MySQL£¬µ«ÊÇÕýʽÉÏÏß֮ǰ»¹ÊÇÒª¶ÔÒµÎñ×öÒ»´ÎÍêÕûµÄÑéÖ¤²Å·ÅÐÄ¡£PingCAP ¹Ù·½ÌṩÁËһЩ¹¤¾ß£¬ ÀýÈç Syncer¡¢Mydumper¡¢Loader¡¢DM ¶¼¿ÉÒÔ°ïÓû§×öÕâЩÊÂÇé¡£ µ«ÊÇÓÐÁËÕâЩ¹¤¾ßÖ®ºóÓû§»¹µÃ×Ô¼º²¿Êð£¬×Ô¼ºÕÒ»úÆ÷£¬¿¼ÂÇÊý¾ÝÁ¿ºÍÏàÓ¦µÄ´ÅÅ̿ռ䣬ËùÒÔÎÒÃǾÍ˼¿¼Äܲ»ÄÜÔÚ¹«ÓÐÔÆÉϰïÖúÓû§°ÑÕâЩÎÊÌâ½â¾öµô£¬ÓÚÊǾÍÓÐÁË UDTS Õâ¸ö²úÆ·£¬³ÉΪÁËÒ»ÖÖ·þÎñ¡£Óû§²»ÐèÒª¹ØÐĵײãÐèҪʹÓõÄÎïÀí×ÊÔ´£¬ÒÔ¼°¹¤¾ßÅäÖá£ÔÚ·þÎñ»¯µÄ¹ý³ÌÖÐÎÒÃÇ»¹Ôö¼ÓÁËһЩÆäËûµÄ¹¦ÄÜ£¬±ÈÈçʧ°Ü×Ô¶¯ÖØÊÔ£¬ËæÊ±ÔÝÍ£¡¢ÖØÆô·þÎñ£¬ÒÔ¼°ÍêÉÆµÄÔËÐÐÐÅÏ¢£¬±ÈÈç´Ó MySQL Ç¨ÒÆµ½ TiDB µÄ¿ªÊ¼ºÍ½áÊøÊ±¼ä¡¢Ç¨ÒƵÄÊý¾ÝÁ¿µÈµÈ¡£
ÔÚ¿ª·¢Õâ¸ö²úÆ·µÄ¹ý³ÌÖÐÎÒÃÇÒ²Óöµ½ÁËһЩÎÊÌ⣬²¢ÇÒ×öÁËÏàÓ¦µÄ¸ÄÔì¡£µÚÒ»¸öÎÊÌâÒ²ÊDZȽϴóµÄÎÊÌâ¾ÍÊǸºÔؾùºâ²ãʹÓõÄÈí¼þ²»Ö§³Ö Syncer »òÕß Drainer Êä³öµÄ use db; ddl Óï¾äµÄ¸ñʽ£¬ÓÚÊÇÎÒÃǸÄÔìÊä³ö db.table ¸ñʽµÄÓï¾ä £»µÚ¶þ¸öÎÊÌâÊÇ DM ÀïÃæµÄ Syncer ²¢²»Ö§³Ö GTID£¬ËùÒÔÎÒÃÇÓÖ×öÁË GTID µÄÖ§³Ö£»µÚÈý¸öÎÊÌâÊÇÎÒÃÇ·¢ÏÖ MySQL µÄÁ¬½Ó¾³£²»Îȶ¨£¬ËùÒÔÎÒÃǶÔÁ¬½Ó³Ø×öÁ˸ÄÔ죻µÚËĸöÎÊÌâÓöµ½µÄ±È½ÏÉÙ£¬Ä³Ð©Óû§µÄ Binlog ÊÇ STATEMENT/MIXED ¸ñʽ£¬¶øÄ¬ÈÏÖ»Ö§³Ö Row ¸ñʽ£¬ÎÒÃÇ×ÔÉíÏ£ÍûÓû§Ð޸ĸñʽºóÔÙ½øÐУ¬µ«ÓеÄÓû§¾õµÃ±È½ÏÀ§ÄÑ£¬ËùÒÔÎÒÃÇÒ²ÔÚ³¢ÊÔ¸ÄÔìÖС£

ÎÒÃÇ×ö UDTS µÄ³õÖÔÖ»ÊÇÏë°Ñ MySQL Ç¨ÒÆµ½ TiDB ÉÏ£¬ µ«Õâ¸ö²úÆ·³öÀ´ºóһЩ²¿ÃÅÎÊÎÒÃÇÄܲ»ÄÜ×ö Oracle µÄÇ¨ÒÆ£¬ÎÒÃÇʵÏÖºóÓÖÎÊÄܲ»ÄÜ×ö UDB Êý¾Ý¿âµÄÇ¨ÒÆ£¬ËùÒÔ×îºóÎÒÃÇÔ½×öÔ½´ó¾Í×ö³ÉÁËÕâÑùÒ»ÕÅͼ¡£

µÚËIJ¿·Ö½²½²ÎÒÃÇ×öµÄ¹ý³ÌÖÐÓöµ½µÄһЩÎÊÌâ¡£

ÎÒÃǾÀú¹ýå´»ú·þÎñÆ÷ÖØÆôµÈµÈһЩʼþ£¬ËäÈ» TiDB ÕûÌåÔËÐзdz£Æ½ÎÈ£¬µ«ÊÇÔÚÕû¸ö²âÊÔ°üÀ¨ÄÚ²¿´òÄ¥µÄ¹ý³ÌÖÐÓöµ½ÁËһЩСÎÊÌ⣺
µÚÒ»ÊÇÊä³ö db.table ¸ñʽµÄÓï¾ä¶ÔÎÒÃDZȽÏÖØÒª£¬¹Ù·½ÔÚ 3.0 ÒѾ fixed¡£
µÚ¶þÊÇ TiDB Éý¼¶µ½ 2.1 ÒÔºóÊ±Çø±ä»¯£¬µ¼Ö¼¸¸öʹÓÃÁË×Ô´øµÄ time º¯ÊýµÄÓû§µÄÊý¾Ý·¢ÉúÁËÒ»µãÎÊÌ⣬²îÁ˰˸öСʱ£¬ºóÃæÓ¦¸Ã²»»áÔÙÓÐÕâÑùµÄÎÊÌâ¡£
µÚÈýÊÇ Syncer ÔÚ Retry ½×¶Î²»´¦Àí SIGTERM£¬µ±Ê±ÌáÁË issue ÒÔºó¹Ù·½ºÜ¿ì½â¾öÁË¡£
µÚËÄÊÇ Syncer can¡¯t decode set datatype£¬ºóÀ´Ò²½â¾öµôÁË¡£
µÚÎåÊÇ Drainer ֻдһ¸ö Partition µÄÎÊÌ⣬»áµ¼ÖÂÊý¾ÝÇãб¡£Kafka Ò»°ã¶¼»á´´½¨Èý¸ö Partition£¬ µ«ÊǺóÃæÁ½¸ö¶¼Êǿյ쬶ÔÐÔÄÜÒ²ÓÐÒ»¶¨µÄÓ°Ï졣Ŀǰ»¹Ã»½â¾ö£¬Ï£ÍûÉçÇø¿ÉÒÔ²»¶ÏµØÍêÉÆ½â¾öÕâ¸öÎÊÌâ¡£ÓÐÒ»¸ö·½·¨¿ÉÒÔ work around£¬¾ÍÊÇÆô¶¯¶à¸ö Drainer£¬Ã¿¸öÖ»¸ºÔðÒ»¸ö DB¡£
µÚÁùÊÇ Raft store µ¥Ïß³ÌÆ¿¾±¸æ¾¯²»¶Ï£¬Õâ¸ö 3.0 ÒѾ½â¾öµôÁË¡£
µÚÆßÊÇ Binlog ¿ªÆô¹Ø±ÕµÄÎÊÌâ¡£ÎÒÃÇĬÈÏÊDz»¿ªÆô Binlog µÄ£¬ÒòΪ¿ªÆô¶ÔÐÔÄÜÓÐÒ»¶¨µÄÓ°Ïì¡£ÓÐÓû§Ê¹ÓõÄʱºò¿ªÆô Binlog£¬·¢ÏÖǰ 10 ·ÖÖÓÄÚ DDL ·Ç³£Âý£¬»ù±¾Ö´ÐÐÒ»ÌõÐèÒª 1m30s£¬Èç¹ûͬʱÊäÈëËÄÎåÌõ¾ÍÀÛ¼ÓÁË£¬ÐèÒª 6m ²ÅÄÜÖ´ÐÐÍ꣬ 2.1.14 °Ñ 10m ¸Ä³É 1m30s ºóÕâ¸öÎÊÌâ»ù±¾ÉϽâ¾öµôÁË¡£

ºóÃæ»¹ÓкܶàÎÊÌ⣬²»ÊÇ TiDB µÄÎÊÌâ¶øÊÇÒòΪ¸ú MySQL Àí½â²»Í¬²úÉúµÄÎÊÌ⣺
µÚÒ»ÊÇ ID ·Ö¶Î×ÔÔö¡£Óû§±È½ÏÀ§»ó£¬ºóÃæÐ´µÄ ID Ôõô±ÈÇ°ÃæµÄ»¹ÒªÐ¡£¬µ«ÊÇÔÚ TiDB ÖÐȷʵÊÇ¿ÉÄܵģ¬ÒòΪÊÇ·Ö¶Î×ÔÔö½Úµã£¬Ò»°ãµÄÒµÎñÒ²²»»á¸ù¾Ý ID À´×öÅÅÐò»òÆäËûÏà¹ØÂß¼£¬ËùÒÔÕâ¸öÎÊÌâÒ²²»Ëã´óÎÊÌâ¡£
µÚ¶þÊÇ GC ʱ¼äµ¼ÖÂÁ¬½ÓÖжϵÄÎÊÌ⣬Õâ¸öÓöµ½µÄ±È½Ï¶à¡£TiDB ĬÈÏ GC ʱ¼äÊÇ 10 ·ÖÖÓ£¬ÓÐÒ»¸ö·Ç³£¸´ÔӵIJéѯÅÜ 20 ·ÖÖÓ²ÅÄÜÅܳöÀ´£¬½á¹ûÅܵ½ 10 ·ÖÖÓµÄʱºò¾Í¶ÏµôÁË£»»òÊÇÔÚ±¸·Ý´óÊý¾ÝµÄʱºò£¬ ±¸·ÝÖ´Ðг¬¹ý 10 ·ÖÖӾͶÏÁË¡£ÎÒÃÇ·¢ÏÖÊÇ GC ʱ¼äÌ«¶Ìµ¼Ö嵀 session Öжϣ¬°Ñ GC ʱ¼äµ÷³¤¿ÉÒÔ½â¾ö¡£
µÚÈýÊÇÊÂÎñÌõÊýÏÞÖÆ¡£TiDB ¸ú MySQL Ïà±ÈÊÇÓкܴóµÄÓÅÊÆ£¬µ«ÊÇÄÚ²¿Æäʵ²¢²»ÊÇÒ»ÌõÊý¾Ý¾Í¿ÉÒÔ×öµÄ¡£ËüµÄ KV entry Ò²ÓкܶàÏÞÖÆ£¬Ä¬ÈÏ KV ²ã×ÜÌõÊý²»Äܳ¬¹ý 30w£¬ÎÒÃǽ¨ÒéÒ»ÌõÓï¾äÀï²»Òª³¬¹ý 10w ÌõÊý¾Ý¡£
×îºóÊÇʧ°Ü×Ô¶¯ÖØÊÔ¡£ÓÐÒ»¸öÒµÎñ²¿ÃÅ·´Ó³Êý¾Ý²»Ò»ÖµÄÎÊÌ⣬²éÏÂÀ´ÊÇÒòΪ TiDB ʹÓÃÁËÀÖ¹ÛËø£¬¶øÇÒĬÈÏÓÐʧ°Ü×Ô¶¯ÖØÊÔÊ®´ÎµÄ»úÖÆ¡£Èç¹û´úÂëдµÄ²»ÊǷdz£½¡×³£¬Á½¸öÊÂÎñ³åÍ»³¢ÊÔÖØÐÂÌá½»ºó¾Í¿ÉÄܵ¼ÖÂÕâ¸öÎÊÌ⡣ͨ¹ýÏÈ select for update ¿ÉÒÔ½â¾öÕâ¸öÎÊÌâ¡£

|