Kutulutsidwa kwa DBMS TiDB 4.0

Ipezeka kutulutsidwa kwa DBMS yogawidwa TiDB 4.0, yopangidwa mothandizidwa ndi matekinoloje a Google Uzani и F1. TiDB ili m'gulu la makina osakanikirana a HTAP (Hybrid Transactional/Analytical Processing), omwe amatha kupereka zochitika zenizeni (OLTP) ndikuyankha mafunso owunika. Ntchitoyi imalembedwa m'chinenero cha Go ndi wogawidwa ndi zololedwa pansi pa Apache 2.0.

Mawonekedwe a TiDB:

  • Thandizo la SQL ndikupereka mawonekedwe a kasitomala omwe amagwirizana ndi protocol ya MySQL, yomwe imathandizira kusintha kwa mapulogalamu omwe alipo omwe adalembedwera MySQL kupita ku TiDB, komanso amalola kugwiritsa ntchito malaibulale wamba wamakasitomala. Kuphatikiza pa protocol ya MySQL, mutha kugwiritsa ntchito API yochokera ku JSON ndi cholumikizira cha Spark kuti mupeze DBMS.
  • SQL imathandizira ma index, ntchito zophatikizika, GROUP BY, ORDER BY, DIISTINCT mawu, kuphatikiza (LEFT JOIN / RIGHT JOIN / CROSS JOIN), mawonedwe, ntchito zazenera ndi ma subqueries. Mphamvu zomwe zaperekedwa ndizokwanira kukonza ntchito ndi TiDB pazogwiritsa ntchito intaneti monga PhpMyAdmin, Agogo ndi WordPress;
  • Kukhazikika kokhazikika komanso kulolerana kolakwika: kukula kosungirako ndi mphamvu zopangira zitha kukulitsidwa mwa kungolumikiza ma node atsopano. Deta imagawidwa m'malo onse ndi redundancy, kulola kuti ntchito ipitirire ngati node za munthu aliyense zikulephera. Zolephera zimangochitika zokha.
  • Dongosololi limatsimikizira kusasinthika komanso pulogalamu yamakasitomala ikuwoneka ngati DBMS imodzi yayikulu, ngakhale kuti kwenikweni, deta yochokera ku node zambiri imakopeka kuti amalize ntchitoyo.
  • Kuti musunge deta pama node, ma backends osiyanasiyana angagwiritsidwe ntchito, mwachitsanzo, ma injini osungira am'deralo GoLevelDB ndi BoltDB kapena injini zathu zosungirako zogawira. TiKV ndi TiFlash. TiKV imasunga zingwe mumtundu wa key/value ndipo ndi yabwino kwambiri pantchito zosinthira (OLTP). TiFlash imasunga zidziwitso m'njira zingapo ndipo imakupatsani mwayi wochita bwino kwambiri pothana ndi zovuta zowunikira (OLAP).
  • Kutha kusintha mosinthika schema yosungirako, kukulolani kuti muwonjezere mizati ndi ma index pa ntchentche popanda kuletsa kukonza ntchito zomwe zikuchitika.

M'kutulutsa kwatsopano:

  • Mwachikhazikitso, wosonkhanitsa zinyalala wogawira Green GC amathandizidwa, zomwe zingawonjezere kwambiri kuthamanga kwa zinyalala m'magulu akuluakulu ndikuwongolera bata;
  • Thandizo lowonjezera pazochita zazikulu, kukula kwake komwe kumachepetsedwa pafupifupi kukula kwa kukumbukira kwakuthupi. Malire a kukula kwa malonda amodzi awonjezeka kuchokera ku 100 MB kufika ku 10 GB;
  • Thandizo lowonjezera la BACKUP ndi RESTORE malamulo osunga zobwezeretsera;
  • Anawonjezera luso loyika maloko pamatebulo;
  • Anawonjezera MySQL-compatible kuwerenga-level transaction isolation mechanism (WERENGANI ZOTHANDIZA);
  • Thandizo lowonjezera la LIKE ndi KUTI mawu oti "ADMIN SHOW DDL JOBS";
  • Anawonjezera oom-use-tmp-storage parameter, yomwe imakulolani kuti mugwiritse ntchito mafayilo osakhalitsa kuti musunge zotsatira zapakatikati pakakhala RAM yosakwanira;
  • Onjezani mawu osakira osasinthika kuti agawire zikhalidwe zachisawawa kumalingaliro;
  • Lamulo la LOAD DATA tsopano lili ndi kuthekera kogwiritsa ntchito mawu a hexadecimal ndi binary;
  • Anawonjezera magawo 15 kuwongolera machitidwe a optimizer;
  • Zida zowonjezera zowunikira magwiridwe antchito a mafunso a SQL. Onjezani mbiri yamafunso apang'onopang'ono, omwe amapezeka kudzera mumndandanda wa SLOW_QUERY / CLUSTER_SLOW_QUERY;
  • Thandizo lowonjezera la ntchito zogwirira ntchito ndi zotsatizana;
  • Anawonjezera kuthekera kosintha magawo osinthika omwe amawerengedwa kuchokera ku PD (Placement Driver, cluster management server). Anawonjezera kuthekera kogwiritsa ntchito mawu oti "SET CONFIG" kusintha makonda a PD/TiKV node.
  • Zowonjezera max-server-malumikizidwe kuti achepetse kuchuluka kwa maulumikizidwe munthawi imodzi ndi seva (zosasinthika 4096);
  • Kuchita bwino muzochitika zomwe zigawo zomwe zafunsidwa zimaphimbidwa ndi ma index;
  • Kukhathamiritsa kwamafunso owonjezera kutengera kuphatikiza kwa index;
  • Kuchita bwino kwa magwiridwe antchito okhala ndi magawo amtengo;
  • Kuchepetsa kuchuluka kwa CPU posunga zotsatira zakupeza ma index ndikusefa zobwereza;
  • Thandizo lowonjezera la mtundu watsopano wosungiramo mzere womwe umakulolani kuti muwonjezere magwiridwe antchito a matebulo okhala ndi zipilala zambiri;
  • Ntchito ya GROUP_CONCAT tsopano ikuthandizira mawu akuti "ORDER BY";
  • Anawonjezera kuthekera kochotsa deta kuchokera pa chipika cha TiFlash kudzera pa SQL;
  • Lamulo la RECOVER TABLE tsopano likuthandizira kubwezeretsa matebulo odulidwa;
  • Anawonjezera tebulo la DDLJobs kuti mufunse zambiri za ntchito ya DDL;
  • Anawonjezera kuthekera kogwiritsa ntchito lamulo la SHOW CONFIG kuti muwonetse makonda a PD ndi TiKV;
  • Yayatsa coprocessor cache mwachisawawa;
  • Chiwerengero cha ma coroutines (goroutines) mu gawo loyeseranso lachigwirizano tsopano chikhoza kuwongoleredwa pogwiritsa ntchito makonda a concurrency;
  • Anawonjezera kuthekera kowonetsa zigawo zamagawo;
  • Kutha kuchepetsa kukula kwa zosungirako kwakanthawi kwawonjezeredwa ku tidb-server;
  • Thandizo lowonjezera pazochitazo "ikani mu tbl_name partition(partition_name_list)" ndi "lowani mu tbl_name partition(partition_name_list)";
  • Mu hashi yomwe imagwiritsidwa ntchito pogawanitsa, kuthandizira pakusefa kutengera lingaliro la "ndi null" wawonjezedwa;
  • Kwa matebulo ogawidwa, chithandizo cha cheke cha index, kuyeretsa, ndi kukonza ntchito zawonjezedwa.

Source: opennet.ru

Kuwonjezera ndemanga