TiDB 3.0 нашри DBMS тақсимшуда

Дастрас нашри DBMS тақсимшуда TiDB 3.0дар зери таъсири технологияҳои Google таҳия шудааст Созанда и F1. TiDB ба категорияи системаҳои гибридии HTAP (Hybrid Transactional/Analytical Processing) тааллуқ дорад, ки қодир аст ҳам транзаксияҳои вақти воқеӣ (OLTP) ва ҳам коркарди дархостҳои таҳлилиро таъмин кунад. Лоиҳа дар Go ва навишта шудааст паҳн мекунад дар зери Apache 2.0 литсензия шудааст.

Хусусиятҳои TiDB:

  • Дастгирии SQL ва пешниҳоди интерфейси муштарӣ, ки бо протоколи MySQL мувофиқ аст, мутобиқ кардани замимаҳои мавҷудаи барои MySQL ба TiDB навишташударо осон мекунад ва инчунин ба шумо имкон медиҳад, ки китобхонаҳои муштарии умумиро истифода баред. Илова ба протоколи MySQL, шумо метавонед API-и асоси JSON ва пайвасткунаки Spark-ро барои дастрасӣ ба DBMS истифода баред.
  • Аз хусусиятҳои SQL, индексҳо, функсияҳои ҷамъоварӣ, GROUP BY, ORDER BY, DISTINCT ифодаҳо, якҷоякунӣ (LEFT JOIN / RIGHT JOIN / CROSS JOIN), намудҳо, функсияҳои тиреза ва зерпурсишҳо дастгирӣ карда мешаванд. Имкониятҳои пешниҳодшуда барои ташкили кор бо TiDB аз чунин веб-барномаҳо, ба монанди PhpMyAdmin, кифояанд. Ҷуҷҳо ва WordPress;
  • Миқёс ва устуворӣ: Қувваи нигоҳдорӣ ва коркардро метавон танҳо тавассути илова кардани гиреҳҳои нав васеъ кард. Маълумот дар саросари гиреҳҳо бо зиёдатӣ тақсим карда мешавад, то ки амалиёт дар сурати ноком шудани гиреҳҳои инфиродӣ идома ёбад. Камбудиҳо ба таври худкор ҳал карда мешаванд.
  • Система мувофиқатро кафолат медиҳад ва ба нармафзори муштарӣ як DBMS-и калон монанд аст, сарфи назар аз он, ки дар асл, барои анҷом додани транзаксия маълумот аз гиреҳҳои зиёде ҷалб карда мешавад.
  • Барои ба таври ҷисмонӣ нигоҳ доштани маълумот дар гиреҳҳо, пуштибони гуногунро метавон истифода бурд, масалан, муҳаррикҳои нигаҳдории маҳаллӣ GoLevelDB ва BoltDB ё муҳаррики нигаҳдории тақсимшудаи худи мо TiKV.
  • Қобилияти ба таври асинхронӣ тағир додани схемаи нигоҳдорӣ, ки ба шумо имкон медиҳад, ки сутунҳо ва индексҳоро бидуни қатъи коркарди амалиёти ҷорӣ илова кунед.

асосӣ навовариҳо:

  • Дар бобати баланд бардоштани хосилнокии мехнат кор ба чо оварда шуд. Дар санҷиши Sysbench, барориши 3.0 нисбат ба шохаи 2.1 ҳангоми иҷрои амалиёти интихоб ва навсозӣ 1.5 маротиба ва дар санҷиши TPC-C 4.5 маротиба тезтар аст. Оптимизатсияҳо ба намудҳои гуногуни дархостҳо, аз ҷумла зерпурсишҳои IN, DO ва NE EXISTS, амалиёти якҷоякунии ҷадвалҳо (JOIN), истифодаи индексҳо ва ғайра таъсир расониданд;
    TiDB 3.0 нашри DBMS тақсимшудаTiDB 3.0 нашри DBMS тақсимшуда

  • Як муҳаррики нави нигаҳдории TiFlash илова карда шуд, ки ба туфайли нигоҳдории сутунӣ барои иҷрои баландтар дар ҳалли мушкилоти таҳлилӣ (OLAP) имкон медиҳад. TiFlash нигаҳдории қаблан пешниҳодшудаи TiKV-ро пурра мекунад, ки маълумоти сатрро дар формати калид/арзиш нигоҳ медорад ва барои вазифаҳои коркарди транзаксия (OLTP) беҳтарин аст. TiFlash бо TiKV паҳлӯ ба паҳлӯ кор мекунад ва додаҳо ҳамчун пеш аз истифодаи протоколи Raft барои муайян кардани консенсус ба TiKV такрор карда мешаванд, аммо барои ҳар як гурӯҳи репликаҳои Raft як нусхаи иловагӣ сохта мешавад, ки дар TiFlash истифода мешавад. Ин равиш барои мубодилаи беҳтари захираҳо байни вазифаҳои OLTP ва OLAP имкон медиҳад ва инчунин маълумоти транзаксияро барои дархостҳои таҳлилӣ фавран дастрас мекунад;

    TiDB 3.0 нашри DBMS тақсимшуда

  • Ҷамъоварии партовҳои тақсимшуда амалӣ карда шуд, ки метавонад суръати ҷамъоварии ахлотро дар кластерҳои калон ба таври назаррас афзоиш диҳад ва устувориро беҳтар созад;
  • Татбиқи таҷрибавии Назорати дастрасӣ ба нақш (RBAC) илова карда шуд. Инчунин мумкин аст, ки ҳуқуқҳои дастрасӣ барои амалиётҳои ТАҲЛИЛИ, ИСТИФОДА, ТАЪМИНИ ГЛОБАЛӢ ва РӮЙХАТИ НАМОИШИ ПРОСЕССИЯ;
  • Имконияти истифодаи ифодаҳои SQL барои истихроҷи дархостҳои суст аз гузориш илова карда шуд;
  • Механизми зуд барқарор кардани ҷадвалҳои ҳазфшуда амалӣ карда шуд, ки ба шумо имкон медиҳад, ки маълумоти тасодуфан ҳазфшударо барқарор кунед;
  • Формати гузоришҳои сабтшуда ягона карда шудааст;
  • Дастгирии иловашуда барои ҳолати бастани пессимистӣ, ки коркарди транзаксияро ба MySQL монанд мекунад;
  • Дастгирии иловашуда барои функсияҳои тиреза (функсияҳои тиреза ё функсияҳои таҳлилӣ) бо MySQL 8.0 мувофиқ. Функсияҳои тиреза ба шумо имкон медиҳанд, ки барои ҳар як сатри дархост бо истифода аз сатрҳои дигар ҳисобҳо анҷом диҳед. Баръакси функсияҳои ҷамъшуда, ки маҷмӯи гурӯҳбандии сатрҳоро ба як сатр ҷамъ мекунанд, функсияҳои тиреза дар асоси мундариҷаи “равзана”, ки як ё якчанд сатрҳои маҷмӯи натиҷаҳоро дар бар мегирад, ҷамъ мешаванд. Дар байни функсияҳои равзанаи амалӣ:
    NTILE, LEAD, LAG, PERCENT_RANK, NTH_VALUE, CUME_DIST, FIRST_VALUE, LAST_VALUE, RANK, DENSE_RANK ва ROW_NUMBER;

  • Дастгирии таҷрибавӣ барои намоишҳо илова карда шуд (VIEW);
  • Системаи тақсимкунӣ такмил дода шуд, қобилияти тақсим кардани маълумот ба бахшҳо дар асоси як қатор арзишҳо ё хэшҳо илова карда шуд;
  • Чаҳорчӯба барои таҳияи плагинҳо илова карда шудааст, масалан, плагинҳо аллакай барои истифодаи рӯйхати сафеди IP ё нигоҳ доштани гузориши аудит омода шудаанд;
  • Дастгирии таҷрибавӣ барои функсияи "ШАРҲ НАМУДАНИ ТАҲЛИЛИ" барои сохтани нақшаи иҷро барои дархости SQL (SQL Plan Management);
  • Барои гирифтани ID-и сатри навбатӣ фармони next_row_id илова карда шуд;
  • Функсияҳои нави дарунсохт JSON_QUOTE, JSON_ARRAY_APPEND, JSON_MERGE_PRESERVE, BENCHMARK, COALESCE ва NAME_CONST илова карда шуданд.

Манбаъ: opennet.ru

Илова Эзоҳ