Disebarkeun DBMS TiDB 3.0 Release

Aya sékrési DBMS disebarkeun TiDB 3.0, dimekarkeun dina pangaruh téknologi Google Spanner и F1. TiDB kagolong kana kategori sistem hibrid HTAP (Hybrid Transactional/Analytical Processing), sanggup duanana nyadiakeun transaksi real-time (OLTP) jeung ngolah queries analitik. Proyék ieu ditulis dina Go jeung disebarkeun ku dilisensikeun dina Apache 2.0.

Keunggulan TiDB:

  • Pangrojong SQL sareng nyayogikeun antarbeungeut klien anu cocog sareng protokol MySQL, anu nyederhanakeun adaptasi aplikasi anu aya anu ditulis pikeun MySQL ka TiDB, sareng ngamungkinkeun ogé ngagunakeun perpustakaan klien umum. Salian protokol MySQL, anjeun tiasa nganggo API basis JSON sareng konektor pikeun Spark pikeun ngaksés DBMS.
  • Fitur SQL ngadukung indéks, fungsi agrégat, GROUP BY, ORDER BY, éksprési DISTINCT, merges (KIRI JOIN / RIGHT JOIN / CROSS JOIN), view, fungsi jandela sareng subqueries. Kamampuhan anu disayogikeun cekap pikeun ngatur damel sareng TiDB pikeun aplikasi wéb sapertos PhpMyAdmin, Gog jeung WordPress;
  • Skalabilitas horisontal sareng kasabaran sesar: ukuran panyimpenan sareng kakuatan pamrosésan tiasa dironjatkeun ku ngan saukur nyambungkeun titik-titik énggal. Data disebarkeun ka sadaya titik kalayan redundansi, ngamungkinkeun operasi diteruskeun upami titik individu gagal. Gagalna diurus sacara otomatis.
  • Sistem ngajamin konsistensi sareng pikeun parangkat lunak klien sigana sapertos DBMS ageung, sanaos kanyataanna, data tina seueur titik katarik pikeun ngarengsekeun transaksi.
  • Pikeun nyimpen data sacara fisik dina titik, backend anu béda tiasa dianggo, contona, mesin panyimpen lokal GoLevelDB sareng BoltDB atanapi mesin panyimpen anu disebarkeun ku urang sorangan. TiKV.
  • Kamampuhan asynchronously ngarobah schema gudang, ngamungkinkeun Anjeun pikeun nambahkeun kolom jeung indéks dina laleur tanpa stopping ngolah operasi lumangsung.

utama inovasi:

  • Usaha parantos dilaksanakeun pikeun ningkatkeun produktivitas. Dina uji Sysbench, release 3.0 nyaeta 2.1 kali leuwih gancang ti cabang 1.5 nalika ngajalankeun operasi pilih jeung update, sarta dina test TPC-C ku 4.5 kali. Optimizations geus kapangaruhan rupa-rupa queries, kaasup IN, DO jeung NOT EXISTS subqueries, tabel merging (JOIN) operasi, pamakéan indéks jeung loba deui;
    Disebarkeun DBMS TiDB 3.0 ReleaseDisebarkeun DBMS TiDB 3.0 Release

  • Ditambahkeun mesin panyimpen TiFlash anyar anu ngamungkinkeun pikeun pagelaran anu langkung luhur dina ngarengsekeun masalah analitis (OLAP) berkat panyimpenan kolom. TiFlash ngalengkepan gudang TiKV saméméhna ditawarkeun, nu nyimpen data baris-wijaksana dina format konci / nilai tur leuwih idéal pikeun tugas processing transaksi (OLTP). TiFlash jalan samping ku samping jeung TiKV sarta data terus replicated kana TiKV sakumaha saméméh ngagunakeun protokol Raft pikeun nangtukeun konsensus, tapi pikeun tiap grup réplika Raft dijieun replika tambahan nu dipaké dina TiFlash. Pendekatan ieu ngamungkinkeun pikeun babagi sumberdaya hadé antara tugas OLTP na OLAP, sarta ogé ngajadikeun data urus instan sadia pikeun queries analitik;

    Disebarkeun DBMS TiDB 3.0 Release

  • A collector sampah disebarkeun geus dilaksanakeun, nu nyata bisa ningkatkeun laju ngumpulkeun sampah dina klaster badag tur ningkatkeun stabilitas;
  • Palaksanaan ékspérimén tina Kontrol Aksés Berbasis Peran (RBAC) parantos ditambah. Ieu oge mungkin pikeun ngeset hak aksés pikeun ANALYZE, USE, SET GLOBAL jeung SHOW PROCESSLIST operasi;
  • Ditambahkeun kamampuhan pikeun ngagunakeun ungkapan SQL nimba queries slow tina log;
  • Mékanisme pikeun gancang malikkeun tabel anu dihapus parantos dilaksanakeun, ngamungkinkeun anjeun mulangkeun data anu teu kahaja dihapus;
  • Format log anu dirékam parantos dihijikeun;
  • Ditambahkeun dukungan pikeun mode ngonci pesimis, anu ngajantenkeun pamrosésan transaksi langkung mirip sareng MySQL;
  • Ditambahkeun dukungan pikeun fungsi jandela (fungsi jandela atanapi fungsi analitik) cocog sareng MySQL 8.0. Pungsi jandela ngidinan Anjeun pikeun ngalakukeun itungan unggal baris query maké baris séjén. Beda sareng fungsi agrégat, anu ngaragragkeun sakumpulan jajar anu dikelompokkeun kana hiji baris, windows fungsina agrégat dumasar kana eusi "jandela," anu ngawengku hiji atawa leuwih baris ti hasil set. Diantara fungsi jandela anu dilaksanakeun:
    NTILE, LEAD, LAG, PERCENT_RANK, NTH_VALUE, CUME_DIST, FIRST_VALUE, LAST_VALUE, RANK, DENSE_RANK sareng ROW_NUMBER;

  • Ditambahkeun dukungan ékspérimén pikeun pintonan (VIEW);
  • Sistem partisi parantos ningkat, kamampuan pikeun ngadistribusikaeun data kana bagian-bagian dumasar kana sauntuyan nilai atanapi hashes parantos ditambah;
  • A kerangka pikeun ngembangkeun plugins geus ditambahkeun, contona, plugins geus disiapkeun pikeun ngagunakeun hiji whitelist IP atawa ngajaga log Inok;
  • Pangrojong ékspérimén parantos disayogikeun pikeun fungsi "NERANGKEUN ANALISIS" pikeun ngawangun rencana palaksanaan pikeun query SQL (SQL Plan Management);
  • Nambahkeun paréntah next_row_id pikeun meunangkeun ID baris salajengna;
  • Ditambahkeun fungsi diwangun-di anyar JSON_QUOTE, JSON_ARRAY_APPEND, JSON_MERGE_PRESERVE, BENCHMARK, COALESCE jeung NAME_CONST.

sumber: opennet.ru

Tambahkeun komentar