Հասանելի է բաշխված DBMS-ի թողարկում TiDB 4.0, մշակվել է Google տեխնոլոգիաների ազդեցության տակ Ներկառուցված и F1. TiDB-ն պատկանում է հիբրիդային HTAP (Հիբրիդ գործարքների/վերլուծական մշակում) համակարգերին, որոնք կարող են ինչպես իրական ժամանակում գործարքներ ապահովել (OLTP), այնպես էլ վերլուծական հարցումներ մշակել: Նախագիծը գրված է Go and տարածվում է լիցենզավորված Apache 2.0-ի համաձայն:
TiDB-ի առանձնահատկությունները.
SQL աջակցություն և MySQL արձանագրության հետ համատեղելի հաճախորդի ինտերֆեյսի տրամադրում, որը հեշտացնում է MySQL-ի համար գրված առկա հավելվածների հարմարեցումը TiDB-ին, ինչպես նաև թույլ է տալիս օգտագործել սովորական հաճախորդի գրադարաններ: Բացի MySQL արձանագրությունից, DBMS մուտք գործելու համար կարող եք օգտագործել JSON-ի վրա հիմնված API և Spark-ի միակցիչ:
SQL-ն ունի աջակցության ինդեքսներ, ագրեգատ գործառույթներ, GROUP BY, ORDER BY, DISTINCT արտահայտություններ, միաձուլումներ (ՁԱԽ ՄԻԱՑՈՒՄ / ԱՋ ՄԻԱՑՈՒՄ/ԽԱՉ ՄԻԱՑՈՒՄ), դիտումներ, պատուհանի գործառույթներ և ենթհարցումներ: Տրամադրված հնարավորությունները բավարար են TiDB-ի հետ աշխատանքը կազմակերպելու համար այնպիսի վեբ հավելվածների համար, ինչպիսիք են PhpMyAdmin-ը, Գոգեր և WordPress;
Հորիզոնական մասշտաբայնություն և սխալների հանդուրժողականություն. պահեստավորման չափը և մշակման հզորությունը կարելի է ավելացնել՝ պարզապես միացնելով նոր հանգույցները: Տվյալները բաշխվում են ավելորդությամբ հանգույցների վրա, ինչը թույլ է տալիս շարունակել աշխատանքը, եթե առանձին հանգույցները ձախողվեն: Անհաջողությունները ինքնաբերաբար լուծվում են:
Համակարգը երաշխավորում է հետևողականությունը, և հաճախորդի ծրագրային ապահովման համար այն կարծես մեկ մեծ DBMS է, չնայած այն հանգամանքին, որ իրականում բազմաթիվ հանգույցներից տվյալներ են ներգրավվում գործարքն ավարտելու համար:
Հանգույցների վրա տվյալները ֆիզիկապես պահելու համար կարող են օգտագործվել տարբեր հետնամասեր, օրինակ՝ տեղական պահեստավորման շարժիչներ GoLevelDB և BoltDB կամ մեր սեփական բաշխված պահեստավորման շարժիչները: TiKV և TiFlash: TiKV-ն տվյալները պահում է տողերի մեջ բանալի/արժեքի ձևաչափով և ավելի օպտիմալ է գործարքների մշակման առաջադրանքների համար (OLTP): TiFlash-ը պահպանում է տվյալները սյունակային ձևով և թույլ է տալիս հասնել ավելի բարձր կատարողականության վերլուծական խնդիրներ (OLAP) լուծելիս:
Պահպանման սխեման ասինխրոն փոխելու հնարավորությունը, որը թույլ է տալիս արագորեն ավելացնել սյունակներ և ինդեքսներ՝ առանց ընթացիկ գործողությունների մշակումը դադարեցնելու:
Նոր թողարկումում.
Լռելյայնորեն միացված է բաշխված աղբահավաք Green GC-ն, որը կարող է զգալիորեն մեծացնել աղբահանության արագությունը խոշոր կլաստերներում և բարելավել կայունությունը;
Ավելացվել է աջակցություն խոշոր գործարքների համար, որոնց չափը սահմանափակվում է գրեթե ֆիզիկական հիշողության չափով: Մեկ գործարքի չափի սահմանաչափը 100 ՄԲ-ից ավելացվել է մինչև 10 ԳԲ;
Ավելացվել է BACKUP և RESTORE հրամանների աջակցություն կրկնօրինակման համար;
Ավելացվել է սեղանների վրա կողպեքներ տեղադրելու հնարավորությունը;
Ավելացվեց MySQL-ի հետ համատեղելի ընթերցման մակարդակի գործարքների մեկուսացման մեխանիզմ (READ COMMITTED);
«ADMIN SHOW DDL Jobs» հրամանին ավելացվել է LIKE և WHERE արտահայտությունների աջակցություն;
Ավելացվեց oom-use-tmp-storage պարամետրը, որը թույլ է տալիս օգտագործել ժամանակավոր ֆայլեր՝ միջանկյալ արդյունքները քեշավորելու համար, երբ RAM-ը բավարար չէ;
Ավելացրել է Random հիմնաբառը՝ ատրիբուտներին պատահական արժեքներ նշանակելու համար.
LOAD DATA հրամանն այժմ ունի տասնվեցական և երկուական արտահայտություններ օգտագործելու հնարավորություն;
Ավելացվել է 15 պարամետր՝ օպտիմիզատորի վարքագիծը վերահսկելու համար.
Ավելացվել են SQL հարցումների կատարողականի ախտորոշման գործիքներ: Ավելացվեց դանդաղ հարցումների մատյան, որը հասանելի է SLOW_QUERY / CLUSTER_SLOW_QUERY համակարգի աղյուսակների միջոցով;
Ավելացվել է հաջորդականությունների հետ աշխատելու գործառույթների աջակցություն;
Հանձնարարականի կրկնակի փուլի կրկնվող քայլերի քանակը այժմ կարելի է վերահսկել՝ օգտագործելով «Committer-concurrency» պարամետրը.
Ավելացվեց աղյուսակի բաժանման շրջանները ցուցադրելու հնարավորությունը;
Tidb-սերվերին ավելացվել է ժամանակավոր պահեստի չափը սահմանափակելու հնարավորությունը.
Ավելացվել է աջակցություն «insert into tbl_name partition(partition_name_list)» և «replace into tbl_name partition (partition_name_list)» գործողությունների համար;
Բաժանման համար օգտագործվող հեշում ավելացվել է «զրոյական է» հատկանիշի հիման վրա զտման աջակցությունը.
Բաժանված աղյուսակների համար ավելացվել է ինդեքսի ստուգման, մաքրման և վերանորոգման գործողությունների աջակցություն: