Vydání distribuované DBMS TiDB 4.0

Dostupné uvolnění distribuované DBMS TiDB 4.0, vyvinuté pod dojmem technologií Google Spanner a F1. TiDB patří do kategorie hybridních systémů HTAP (Hybrid Transactional/Analytical Processing), schopných jak poskytovat provádění transakcí v reálném čase (OLTP), tak vykonávat zpracování analytických dotazů. Projekt je napsán v jazyce Go a distribuováno pod licencí Apache 2.0.

Vlastnosti TiDB:

  • Podpora SQL a poskytování klientského rozhraní kompatibilního s protokolem MySQL, což zjednodušuje adaptaci stávajících aplikací, napsaných pro MySQL, na TiDB a také umožňuje využívat běžné klientské knihovny. Kromě protokolu MySQL lze pro přístup k DBMS použít API založené na JSON a konektor pro Spark.
  • Mezi možnosti SQL patří podpora indexů, agregační funkce, výrazy GROUP BY, ORDER BY, DISTINCT, spojení (LEFT JOIN / RIGHT JOIN / CROSS JOIN), pohledy, okna funkcí a subdotazy. Poskytované možnosti jsou dostatečné k tomu, aby mohly podporovat provoz s TiDB webových aplikací, jako jsou PhpMyAdmin, Gogs a WordPress;
  • Možnost horizontálního škálování a zajištění odolnosti proti výpadkům: velikost úložiště a výpočetní výkon lze zvyšovat jednoduchým připojením nových uzlů. Data jsou distribuována mezi uzly s redundancí, která umožňuje pokračovat v práci v případě selhání jednotlivých uzlů. Selhání jsou zpracovávána automaticky.
  • Systém zaručuje konzistenci a pro klientský software vypadá jako jedna velká DBMS, ačkoli pro provádění transakce jsou zapojeny data z mnoha uzlů.
  • Pro fyzické ukládání dat na uzlech lze používat různé backendy, například lokální úložné motory GoLevelDB a BoltDB nebo vlastní motory distribuovaného úložiště TiKV a TiFlash. TiKV ukládá data v řezaném formátu klíč/hodnota a je optimalizován pro úkoly zpracování transakcí (OLTP). TiFlash ukládá data ve sloupcích a umožňuje dosáhnout vyšší výkonnosti při řešení analytických úloh (OLAP).
  • Možnost asynchronních změn schématu ukládání, která umožňuje na místě přidávat sloupce a indexy bez zastavení zpracování aktuálních operací.

V novém vydání:

  • Ve výchozím nastavení je aktivován distribuovaný garbage collector Green GC, který výrazně zvyšuje rychlost sběru odpadu ve velkých clusterech a zvyšuje stabilitu provozu;
  • Byla přidána podpora pro velké transakce, jejichž velikost je prakticky omezena velikostí fyzické paměti. Omezení velikosti jedné transakce bylo zvýšeno ze 100 MB na 10 GB;
  • Byla přidána podpora příkazů BACKUP a RESTORE pro zálohování;
  • Byla přidána možnost zamčení tabulek;
  • Byl přidán mechanismus izolace transakcí kompatibilní s MySQL na úrovni čtení (READ COMMITTED);
  • Byla přidána podpora výrazů LIKE a WHERE do příkazu 'ADMIN SHOW DDL JOBS';
  • Byl přidán parametr oom-use-tmp-storage, který umožňuje používat dočasné soubory pro ukládání meziproduktů v podmínkách nedostatku operační paměti;
  • Bylo přidáno klíčové slovo Random pro přiřazení náhodných hodnot atributům;
  • V příkazu LOAD DATA se objevila možnost použití hexadecimálních a binárních výrazů;
  • Bylo přidáno 15 parametrů pro řízení chování optimalizátoru;
  • Byly přidány nástroje pro diagnostiku výkonu SQL dotazů. Byl přidán log pomalých dotazů, dostupný prostřednictvím systémových tabulek SLOW_QUERY / CLUSTER_SLOW_QUERY;
  • Byla přidána podpora funkcí pro práci se sekvencemi;
  • Byla přidána možnost dynamické změny parametrů konfigurace čtených z PD (Placement Driver, server správy clusteru). Přidána možnost použití výrazu 'SET CONFIG' pro změnu nastavení uzlů PD / TiKV.
  • Bylo přidáno nastavení max-server-connections pro omezení maximálního počtu současných připojení k serveru (výchozí 4096);
  • Byla zvýšena výkonnost v situacích, kdy jsou požadované sloupce zcela pokryty indexy;
  • Byla přidána optimalizace dotazů na základě sloučení indexů;
  • Byla zvýšena výkonnost operací s rozsahy hodnot;
  • Bylo sníženo zatížení CPU díky ukládání výsledků přístupu k indexům do mezipaměti a odfiltrování duplicit;
  • Byla přidána podpora nového formátu ukládání řetězců, který zvyšuje výkonnost tabulek s velkým počtem sloupců;
  • Funkce GROUP_CONCAT nyní podporuje výraz 'ORDER BY';
  • Byla přidána možnost vyhledávání dat z logu TiFlash pomocí SQL;
  • V týmu „RECOVER TABLE byla zavedena podpora obnovení zkrácených tabulek;
  • Byla přidána systémová tabulka DDLJobs pro dotazování podrobností o provádění DDL prací;
  • Byla přidána možnost aplikace příkazu SHOW CONFIG pro zobrazení nastavení PD a TiKV;
  • Zahrnuto výchozí cache koprocesoru;
  • Počet spoluprogramů (goroutine) ve fázi opakovaných pokusů o commit lze nyní řídit pomocí nastavení committer-concurrency;
  • Byla přidána možnost zobrazení regionů tabulkového oddílu (table partition);
  • Do tidb-server byla přidána možnost omezení velikosti dočasného úložiště;
  • Byla přidána podpora operací „insert into tbl_name partition(partition_name_list)“ a „replace into tbl_name partition(partition_name_list)“;
  • Do používaného pro sekcionování (partitioning) hashe byla přidána podpora filtrování podle kritéria „is null“;
  • Pro sekcionované tabulky byla přidána podpora operací kontroly, čištění a obnovy indexů.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster