TiDB 3.0 kesara DBMS ntọhapụ

Dị ekesa DBMS ntọhapụ TiDB 3.0mepụtara n'okpuru mmetụta nke teknụzụ Google Nyocha и F1. TiDB so na udi nke ngwakọ HTAP (Hybrid Transaction/Analytical Processing) sistemu nwere ike ma inye azụmahịa oge (OLTP) na nhazi ajụjụ nyocha. Edere oru a na Go na kesara site nyere ikike n'okpuru Apache 2.0.

Atụmatụ TiDB:

  • Nkwado maka SQL na inye onye ahịa interface nke dakọtara na MySQL protocol, nke na-eme ka ọ dị mfe ịmegharị ngwa ndị dị ugbu a edere maka MySQL na TiDB, ma na-enyekwa gị ohere iji ụlọ akwụkwọ ndị ahịa nkịtị. Na mgbakwunye na MySQL protocol, ị nwere ike iji JSON dabeere API na njikọ maka Spark iji nweta DBMS.
  • N'ime njirimara nke SQL, indexes, mkpokọta ọrụ, GROUP BY, ORDER BY, DISTINCT expression, merges (Njikọ aka ekpe / RIGHT JOIN / CROSS JOIN), echiche, ọrụ windo na subqueries na-akwado. Ohere enyere ezuru iji hazie ọrụ na TiDB nke ngwa webụ dị ka PhpMyAdmin, Ọg na WordPress;
  • Ọnụ ọgụgụ na nkwụghachi: Enwere ike ịbawanye ike nchekwa na nhazi naanị site na ịgbakwunye ọnụ ọhụrụ. A na-ekesa data n'ofe ọnụ ọnụ na-arụ ọrụ iji kwe ka arụ ọrụ gaa n'ihu ma ọ bụrụ na ọnụ otu onye dara. A na-edozi ọdịda na-akpaghị aka.
  • Usoro ahụ na-ekwe nkwa ịdịgidesi ike ma dị ka otu nnukwu DBMS na ngwanrọ ndị ahịa, n'agbanyeghị eziokwu ahụ bụ na a na-eji data sitere na ọtụtụ ọnụ ọnụ iji mezue azụmahịa ahụ.
  • Iji chekwaa data n'anụ ahụ na ọnụ ọnụ, enwere ike iji azụ azụ dị iche iche, dịka ọmụmaatụ, injin nchekwa mpaghara GoLevelDB na BoltDB ma ọ bụ igwe nchekwa nke kesara nke anyị. TiKV.
  • Ikike ịgbanwe usoro nchekwa asynchronously, na-enye gị ohere ịgbakwunye ogidi na indexes na ofufe na-akwụsịghị nhazi nke arụmọrụ na-aga n'ihu.

Main ihe ọhụrụ:

  • Emeela ọrụ iji mụbaa arụpụta ihe. Na ule Sysbench, ntọhapụ 3.0 bụ 2.1 ugboro ngwa ngwa karịa alaka 1.5 mgbe ị na-eme nhọrọ na melite arụmọrụ, na na ule TPC-C site na 4.5 ugboro. Optimizations emetụtala ụdị ajụjụ dị iche iche, gụnyere IN, DO na BỤGHỊ EXISTS subqueries, table merging (JOIN) arụmọrụ, ojiji nke indexes na ọtụtụ ndị ọzọ;
    TiDB 3.0 kesara DBMS ntọhapụTiDB 3.0 kesara DBMS ntọhapụ

  • Agbakwunyere igwe nchekwa TiFlash ọhụrụ nke na-enye ohere maka ịrụ ọrụ dị elu na idozi nsogbu nyocha (OLAP) ekele maka nchekwa kọlụm. TiFlash na-emeju ebe nchekwa TiKV enyere na mbụ, nke na-echekwa data amamihe dị n'usoro n'ụdị igodo/uru yana dịkwa mma maka ọrụ nhazi azụmahịa (OLTP). TiFlash na-arụ ọrụ n'akụkụ na TiKV na data na-aga n'ihu na-emegharị ya na TiKV dị ka tupu iji usoro Raft iji chọpụta nkwenye, mana maka otu ọ bụla nke Raft oyiri a na-emepụta ihe ọzọ nke eji na TiFlash. Ụzọ a na-enye ohere maka ikesa akụrụngwa ka mma n'etiti ọrụ OLTP na OLAP, ma na-emekwa ka data azụmahịa dị ozugbo maka ajụjụ nyocha;

    TiDB 3.0 kesara DBMS ntọhapụ

  • A na-emejuputa ihe mkpofu a na-ekesa, nke nwere ike ịbawanye ọsọ nke mkpofu ahịhịa na nnukwu ụyọkọ ma melite nkwụsi ike;
  • Agbakwunyela mmejuputa nnwale nke Njikwa Nweta-Dabere na Ọrụ (RBAC). Ọ dịkwa ike ịtọ ikike ịnweta maka ọrụ nyocha, JI, SET GLOBAL na SHOW PROCESSLIST;
  • Agbakwunyere ikike iji okwu SQL wepụta ajụjụ nwayọ na ndekọ;
  • Emebela usoro maka iweghachite tebụl ndị ehichapụrụ ngwa ngwa, na-enye gị ohere iweghachi data ehichapụ na mberede;
  • Ụdị ndekọ ndekọ aha ejikọtala ọnụ;
  • Nkwado agbakwunyere maka ọnọdụ mkpọchi enweghị nchekwube, nke na-eme ka nhazi azụmahịa yiri MySQL;
  • Nkwado agbakwunyere maka ọrụ windo (ọrụ windo ma ọ bụ ọrụ nyocha) dakọtara na MySQL 8.0. Ọrụ mpio na-enye gị ohere iji ahịrị ndị ọzọ rụọ mgbako maka ahịrị ajụjụ ọ bụla. N'adịghị ka ọrụ nchịkọta, nke na-adaba usoro ahịrị chịkọtara n'otu ahịrị, ọrụ mpio na-agbakọ dabere na ọdịnaya nke "window," nke gụnyere otu ahịrị ma ọ bụ karịa site na ntọala nsonaazụ. N'ime ọrụ windo emejuputa atumatu:
    NTILE, LEAD, LAG, PERCENT_RANK, NTH_VALUE, CUME_DIST, FIRST_VALUE, LAST_VALUE, RANK, DENSE_RANK na ROW_NUMBER;

  • Nkwado nnwale agbakwunyere maka nlele (LEEW);
  • Emeziwanyela usoro nkewa, ikike nkesa data n'ime ngalaba dabere na ụkpụrụ dị iche iche ma ọ bụ hashes agbakwunyere;
  • Agbakwunyela usoro maka mmepe plugins, dịka ọmụmaatụ, akwadolarị plugins maka iji akwụkwọ ọcha IP ma ọ bụ idowe ndekọ nyocha;
  • Enyerela nkwado nnwale maka ọrụ "EXPLAIN ANALYZE" maka ịmepụta atụmatụ igbu maka ajụjụ SQL (SQL Plan Management);
  • Agbakwunyere next_row_id iwu iji nweta ID nke ahiri na-esote;
  • Agbakwunyere ọrụ arụnyere ọhụrụ JSON_QUOTE, JSON_ARRAY_APPEND, JSON_MERGE_PRESERVE, BENCHMARK ,COALESCE na NAME_CONST.

isi: opennet.ru

Tinye a comment