Rilaxx imqassam ta' DBMS TiDB 3.0

Disponibbli rilaxx tad-DBMS distribwit TiDB3.0żviluppati taħt l-influwenza tat-teknoloġiji Google Spanner и F1. TiDB jappartjeni għall-kategorija ta 'sistemi ibridi HTAP (Ibrid Transazzjonali/Ipproċessar Analitiku) li kapaċi kemm jipprovdu tranżazzjonijiet f'ħin reali (OLTP) kif ukoll jipproċessaw mistoqsijiet analitiċi. Il-proġett huwa miktub f'Go u imqassma minn liċenzjat taħt Apache 2.0.

Karatteristiċi TiDB:

  • Appoġġ għall-SQL u l-provvista ta 'interface tal-klijent li hija kompatibbli mal-protokoll MySQL, li jagħmilha faċli biex tadatta applikazzjonijiet eżistenti miktuba għal MySQL għal TiDB, u tippermetti wkoll li tuża libreriji tal-klijenti komuni. Minbarra l-protokoll MySQL, tista 'tuża l-API bbażata fuq JSON u l-konnettur għal Spark biex taċċessa d-DBMS.
  • Mill-karatteristiċi ta 'SQL, indiċi, funzjonijiet aggregati, GROUP BY, ORDER BY, espressjonijiet DISTINCT, amalgamazzjonijiet (LEFT JOIN / RIGHT JOIN / CROSS JOIN), fehmiet, funzjonijiet ta' tieqa u subqueries huma appoġġjati. L-opportunitajiet ipprovduti huma biżżejjed biex jiġi organizzat ix-xogħol ma' TiDB ta' applikazzjonijiet tal-web bħal PhpMyAdmin, gogils u WordPress;
  • Skala-out u reżiljenza: Il-ħżin u l-qawwa tal-ipproċessar jistgħu jiżdiedu sempliċement billi jiżdiedu nodi ġodda. Id-dejta hija mqassma fuq in-nodi b'redundancy biex tippermetti li l-operazzjonijiet ikomplu jekk in-nodi individwali jonqsu. Il-fallimenti jiġu ttrattati awtomatikament.
  • Is-sistema tiggarantixxi konsistenza u tidher qisha DBMS wieħed kbir għas-softwer tal-klijent, minkejja l-fatt li d-dejta minn ħafna nodi fil-fatt tintuża biex tlesti t-tranżazzjoni.
  • Backends differenti jistgħu jintużaw għall-ħażna tad-dejta fiżika fuq nodi, pereżempju, magni tal-ħażna lokali GoLevelDB u BoltDB jew magna tal-ħażna mqassma proprjetarja TiKV.
  • Il-ħila li tbiddel b'mod asinkroniku l-iskema tal-ħażna, li tippermettilek iżżid kolonni u indiċi fuq il-fly mingħajr ma twaqqaf l-ipproċessar ta 'operazzjonijiet li għaddejjin.

Il-prinċipali innovazzjonijiet:

  • Sar xogħol biex tiżdied il-produttività. Fit-test Sysbench, ir-rilaxx 3.0 jegħleb il-fergħa 2.1 b'1.5 darbiet f'operazzjonijiet ta 'għażla u aġġornament, u fit-test TPC-C b'4.5 darbiet. L-ottimizzazzjonijiet affettwaw diversi tipi ta' mistoqsijiet, inklużi subqueries "IN", "DO" u "NOT EXISTS", operazzjonijiet ta' amalgamazzjoni ta' tabella (JOIN), użu ta' indiċijiet, u aktar;
    Rilaxx imqassam ta' DBMS TiDB 3.0Rilaxx imqassam ta' DBMS TiDB 3.0

  • Magna tal-ħażna ġdida, TiFlash, ġiet miżjuda biex tinkiseb prestazzjoni analitika aħjar (OLAP) permezz ta 'ħażna marbuta mal-kolonna. TiFlash jikkumplimenta l-ħażna TiKV offruta qabel, li taħżen id-dejta fil-kuntest ta 'ringieli f'format ta' ċavetta/valur u hija aktar adattata għall-kompiti tal-ipproċessar tat-tranżazzjonijiet (OLTP). TiFlash jaħdem spalla ma 'ġenb ma' TiKV u d-dejta tkompli tiġi replikata għal TiKV bħal qabel tuża l-protokoll Raft biex tiddetermina l-kunsens, iżda għal kull grupp ta 'repliki Raft tinħoloq u tintuża replika addizzjonali f'TiFlash. Approċċ bħal dan jippermetti diviżjoni aħjar tar-riżorsi bejn il-kompiti OLTP u OLAP, u jagħmel ukoll id-dejta tat-tranżazzjonijiet disponibbli istantanjament għal mistoqsijiet analitiċi;

    Rilaxx imqassam ta' DBMS TiDB 3.0

  • Ġie implimentat kollettur taż-żibel imqassam, li jista 'jżid b'mod sinifikanti l-veloċità tal-ġbir taż-żibel fi gruppi kbar u jtejjeb l-istabbiltà;
  • Ġiet miżjuda implimentazzjoni sperimentali tas-sistema tal-kontroll tal-aċċess ibbażat fuq ir-rwol (RBAC). Huwa wkoll possibbli li jiġu stabbiliti drittijiet ta' aċċess għall-operazzjonijiet ANALYZE, USE, SET GLOBAL u SHOW PROCESSLIST;
  • Żid il-ħila li tuża espressjonijiet SQL biex tiġbor mir-reġistru tal-mistoqsijiet bil-mod;
  • Implimenta mekkaniżmu għall-irkupru mgħaġġel ta 'tabelli mħassra, li jippermettilek tirkupra data mħassra aċċidentalment;
  • Format unifikat ta' zkuk irreġistrati;
  • Appoġġ miżjud għall-mod ta 'qfil pessimistiku, li jagħmel l-ipproċessar tat-tranżazzjonijiet eqreb lejn MySQL;
  • Appoġġ miżjud għall-funzjonijiet tat-twieqi (funzjonijiet tat-twieqi jew funzjonijiet analitiċi) kompatibbli mal-MySQL 8.0. Il-funzjonijiet tat-twieqi jippermettu li kull ringiela ta' mistoqsija twettaq kalkoli bl-użu ta' ringieli oħra. B'differenza mill-funzjonijiet aggregati, li jikkollassaw sett raggruppat ta' ringieli f'ringiela waħda, il-funzjonijiet tat-tieqa jingħaqdu abbażi tal-kontenut ta' "tieqa" li tinkludi ringiela waħda jew aktar mis-sett tar-riżultati. Fost il-funzjonijiet tat-tieqa implimentati:
    NTILE, LEAD, LAG, PERCENT_RANK, NTH_VALUE, CUME_DIST, FIRST_VALUE , LAST_VALUE, RANK, DENSE_RANK, u ROW_NUMBER;

  • Miżjud appoġġ sperimentali għall-opinjonijiet (VIEW);
  • Sistema mtejba ta 'qsim (qsim), żiedet il-kapaċità li tqassam id-dejta f'taqsimiet ibbażati fuq firxa ta' valuri jew hashes;
  • Żid qafas għall-iżvilupp tal-plugins, pereżempju, il-plugins diġà ġew ippreparati biex jużaw il-lista abjad tal-IP jew logging tal-verifika;
  • Ipprovda appoġġ sperimentali għall-funzjoni "EXPLAIN ANALYZE" għall-bini ta' pjan ta' eżekuzzjoni ta' query SQL (SQL Plan Management);
  • Miżjud kmand next_row_id biex tikseb id-ringiela li jmiss;
  • Miżjud funzjonijiet ġodda integrati JSON_QUOTE, JSON_ARRAY_APPEND, JSON_MERGE_PRESERVE, BENCHMARK ,COALESCE u NAME_CONST.

Sors: opennet.ru

Żid kumment