Dqlite 1.0, versi disebarake saka SQLite saka Canonical, kasedhiya

Perusahaan Kanonik diterbitake release project wujud Dqlite 1.0 (Distributed SQLite), sing ngembangake mesin SQL sing kompatibel karo SQLite sing ndhukung replikasi data, pemulihan otomatis saka kegagalan, lan toleransi kesalahan kanthi nyebarake panangan ing pirang-pirang simpul. DBMS dileksanakake ing wangun perpustakaan C ditempelake ing aplikasi lan disebarake dening miturut lisensi Apache 2.0 (SQlite asli kasedhiya ing domain umum). Binding basa kasedhiya Go.

Pustaka kasebut minangka tambahan kanggo basis kode SQLite sing wis ana sing nambahake dhukungan protokol jaringan kanggo nyambungake pirang-pirang kasus aplikasi sing mlaku ing host sing beda-beda. Aplikasi sing diklumpukake karo Dqlite bisa digunakake minangka kluster toleransi kesalahan mandiri, bebas saka DBMS eksternal. Ing praktik, Dqlite digunakake dening Canonical ing sistem manajemen kontainer LXD. Ing antarane area aplikasi perpustakaan, nggawe piranti lan prosesor Internet of Things sing toleran fault ing sistem uga kasebut.
Pinggiran- petungan.

Kanggo njamin konsistensi ing replikasi data, metode konsensus adhedhasar algoritma digunakake Raft, sing digunakake ing proyek kayata etcd, RethinkDB, CockroachDB lan OpenDaylight. Dqlite nggunakake implementasine bedo dhewe C-rakit, ditulis nganggo basa C. Pustaka sing wis siap digunakake kanggo ngolah sambungan multiplex lan ngatur peluncuran coroutine libu ΠΈ libco.

Dibandhingake karo proyek sing padha rqlite, Dqlite nyedhiyakake dhukungan transaksional lengkap, bisa komunikasi, karo proyek C apa wae, ngidini panggunaan fungsi wektu (), lan, nggunakake replikasi basis pigura tinimbang replikasi basis terjemahan SQL.

Fitur Dqlite:

  • Nindakake kabeh operasi disk lan jaringan asynchronously;
  • Kasedhiya set tes kanggo ngonfirmasi kabeneran data;
  • Konsumsi memori sing sithik lan ijol-ijolan data sing efisien liwat jaringan;
  • Panyimpenan permanen saka database lan log transaksi ing disk (kanthi kamungkinan caching ing memori);
  • Recovery cepet saka gagal;
  • Klien CLI stabil ing basa Go, sing bisa digunakake kanggo miwiti basis data, ngatur replikasi lan nyambungake / medhot sambungan;
  • Ndhukung arsitektur ARM, X86, POWER lan IBM Z;
  • Implementasine algoritma Raft dioptimalake kanggo nyilikake wektu tundha nalika nindakake transaksi.

Source: opennet.ru

Add a comment