Rilis DBMS TiDB 3.0 sing disebarake

Kasedhiya release saka DBMS mbagekke TiDB 3.0, dikembangake miturut pengaruh teknologi Google Spanner и F1. TiDB kalebu kategori sistem HTAP hibrida (Hybrid Transactional/Analytical Processing), sing bisa nyedhiyakake transaksi wektu nyata (OLTP) lan ngolah pitakon analitis. Proyek kasebut ditulis ing basa Go lan disebarake dening dilisensi ing Apache 2.0.

Fitur TiDB:

  • Dhukungan SQL lan panyedhiya antarmuka klien sing kompatibel karo protokol MySQL, sing nyederhanakake adaptasi aplikasi sing wis ana sing ditulis kanggo MySQL kanggo TiDB, lan uga ngidini panggunaan perpustakaan klien umum. Saliyane protokol MySQL, sampeyan bisa nggunakake API basis JSON lan konektor kanggo Spark kanggo ngakses DBMS.
  • Fitur SQL ndhukung indeks, fungsi agregat, GROUP BY, ORDER BY, DISTINCT expressions, merges (LEFT JOIN / RIGHT JOIN / CROSS JOIN), views, fungsi jendhela lan subqueries. Kapabilitas sing diwenehake cukup kanggo ngatur karya karo TiDB kanggo aplikasi web kayata PhpMyAdmin, Gog lan WordPress;
  • Skalabilitas horisontal lan toleransi kesalahan: ukuran panyimpenan lan daya pangolahan bisa ditambah kanthi mung nyambungake simpul anyar. Data disebarake ing node kanthi redundansi, ngidini operasi bisa terus yen node individu gagal. Gagal ditangani kanthi otomatis.
  • Sistem kasebut njamin konsistensi lan kanggo piranti lunak klien katon kaya siji DBMS gedhe, sanajan kasunyatane, data saka akeh simpul ditarik kanggo ngrampungake transaksi kasebut.
  • Kanggo nyimpen data sacara fisik ing simpul, backend sing beda bisa digunakake, contone, mesin panyimpenan lokal GoLevelDB lan BoltDB utawa mesin panyimpenan sing disebarake dhewe. TiKV.
  • Kemampuan kanggo ngganti skema panyimpenan kanthi asinkron, ngidini sampeyan nambah kolom lan indeks kanthi cepet tanpa mandheg ngolah operasi sing lagi ditindakake.

Utama inovasi:

  • Karya wis ditindakake kanggo nambah produktivitas. Ing test Sysbench, release 3.0 punika 2.1 kaping luwih cepet saka cabang 1.5 nalika nindakake operasi pilih lan nganyari, lan ing test TPC-C dening 4.5 kaping. Optimizations wis kena pengaruh macem-macem jinis pitakon, kalebu IN, DO lan NOT EXISTS subqueries, Tabel gabung (JOIN) operasi, nggunakake indeks lan akeh liyane;
    Rilis DBMS TiDB 3.0 sing disebarakeRilis DBMS TiDB 3.0 sing disebarake

  • Nambahake mesin panyimpenan TiFlash anyar sing ngidini kinerja sing luwih dhuwur kanggo ngrampungake masalah analitis (OLAP) amarga panyimpenan kolom. TiFlash nglengkapi panyimpenan TiKV sing ditawakake sadurunge, sing nyimpen data baris-wicaksana ing format tombol/nilai lan luwih becik kanggo tugas pangolahan transaksi (OLTP). TiFlash dianggo bebarengan karo TiKV lan data terus ditiru menyang TiKV kaya sadurunge nggunakake protokol Raft kanggo nemtokake konsensus, nanging kanggo saben klompok Raft replika digawe tiron tambahan kang digunakake ing TiFlash. Pendekatan iki ngidini enggo bareng sumber daya sing luwih apik antarane tugas OLTP lan OLAP, lan uga ndadekake data transaksi kasedhiya kanggo pitakon analitis;

    Rilis DBMS TiDB 3.0 sing disebarake

  • A kolektor sampah mbagekke wis dipun ginakaken, kang Ngartekno bisa nambah kacepetan koleksi uwuh ing kelompok gedhe lan nambah stabilitas;
  • Implementasi eksperimen saka Role-Based Access Control (RBAC) wis ditambahake. Sampeyan uga bisa nyetel hak akses kanggo operasi ANALYZE, USE, SET GLOBAL lan SHOW PROCESSLIST;
  • Nambahake kemampuan kanggo nggunakake ekspresi SQL kanggo ngekstrak pitakon alon saka log;
  • Mekanisme kanggo mulihake tabel sing wis dibusak kanthi cepet, ngidini sampeyan mulihake data sing ora sengaja dibusak;
  • Format log sing direkam wis manunggal;
  • Dhukungan tambahan kanggo mode ngunci pesimis, sing ndadekake proses transaksi luwih mirip karo MySQL;
  • Dhukungan tambahan kanggo fungsi jendhela (fungsi jendhela utawa fungsi analitis) kompatibel karo MySQL 8.0. Fungsi jendhela ngidini sampeyan nindakake petungan kanggo saben baris pitakon nggunakake baris liyane. Boten kados fungsi agregat, ingkang ambruk sakumpulan baris dados satunggal, fungsi jendhela kanthi agregat adhedhasar isi "jendhela", ingkang kalebet satunggal utawi langkung larik saking set asil. Antarane fungsi jendhela sing diimplementasikake:
    NTILE, LEAD, LAG, PERCENT_RANK, NTH_VALUE, CUME_DIST, FIRST_VALUE, LAST_VALUE, RANK, DENSE_RANK lan ROW_NUMBER;

  • Ditambahake dhukungan eksperimen kanggo tampilan (VIEW);
  • Sistem partisi wis apik, kemampuan kanggo nyebarake data menyang bagean adhedhasar sawetara nilai utawa hash wis ditambahake;
  • Kerangka kanggo ngembangake plugin wis ditambahake, contone, plugin wis disiapake kanggo nggunakake daftar putih IP utawa njaga log audit;
  • Dhukungan eksperimen wis kasedhiya kanggo fungsi "EXPLAIN ANALYZE" kanggo mbangun rencana eksekusi kanggo query SQL (SQL Plan Management);
  • Added next_row_id printah kanggo njaluk ID saka baris sabanjuré;
  • Nambahake fungsi anyar sing dibangun JSON_QUOTE, JSON_ARRAY_APPEND, JSON_MERGE_PRESERVE, BENCHMARK, COALESCE lan NAME_CONST.

Source: opennet.ru

Add a comment