Yandex membuka kod DBMS YDB yang diedarkan yang menyokong SQL

Yandex telah menerbitkan teks sumber DBMS YDB yang diedarkan, yang melaksanakan sokongan untuk dialek SQL dan transaksi ACID. DBMS telah dicipta dari awal dan pada mulanya dibangunkan dengan tujuan untuk memastikan toleransi kesalahan, pemulihan automatik sekiranya berlaku kegagalan dan kebolehskalaan. Adalah diperhatikan bahawa Yandex melancarkan kluster YDB yang berfungsi, termasuk lebih daripada 10 ribu nod, menyimpan ratusan petabait data dan melayani berjuta-juta transaksi teragih sesaat. YDB digunakan dalam projek Yandex seperti Market, Cloud, Smart Home, Alice, Metrika dan Auto.ru. Kod ini ditulis dalam C/C++ dan diedarkan di bawah lesen Apache 2.0. Untuk membiasakan diri dan pelancaran pantas, anda boleh menggunakan bekas Docker siap sedia.

Ciri-ciri Projek:

  • Menggunakan model data hubungan dengan jadual. YQL (YDB Query Language) digunakan untuk membuat pertanyaan dan mentakrifkan skema data, yang merupakan dialek SQL yang disesuaikan untuk berfungsi dengan pangkalan data teragih yang besar. Apabila mencipta skema storan, kumpulan jadual seperti pokok disokong, menyerupai direktori dalam sistem fail. API disediakan untuk bekerja dengan data dalam format JSON.
    Yandex membuka kod DBMS YDB yang diedarkan yang menyokong SQL
  • Sokongan untuk mengakses data menggunakan pertanyaan imbasan yang direka untuk melaksanakan pertanyaan ad-hoc analitikal terhadap pangkalan data, dilaksanakan dalam mod baca sahaja dan mengembalikan strim grpc.
  • Interaksi dengan DBMS dan menghantar permintaan dijalankan menggunakan antara muka baris arahan, antara muka web terbina dalam atau YDB SDK, yang menyediakan perpustakaan untuk C ++, C # (.NET), Go, Java, Node.js, PHP dan Python.
  • Keupayaan untuk mencipta konfigurasi tahan kesalahan yang terus berfungsi apabila cakera individu, nod, rak dan juga pusat data gagal. YDB menyokong penggunaan dan replikasi segerak merentas tiga zon ketersediaan sambil mengekalkan kesihatan kluster sekiranya berlaku kegagalan salah satu zon.
  • Pulih secara automatik daripada kegagalan dengan kelewatan minimum untuk aplikasi dan secara automatik mengekalkan lebihan yang ditentukan semasa menyimpan data.
  • Penciptaan indeks secara automatik pada kunci utama dan keupayaan untuk menentukan indeks sekunder untuk meningkatkan kecekapan akses kepada lajur arbitrari.
  • Skala mendatar. Apabila beban dan saiz data yang disimpan bertambah, kluster boleh dikembangkan dengan hanya menyambungkan nod baharu. Peringkat pengiraan dan storan diasingkan, membolehkan pengiraan dan penskalaan storan secara berasingan. DBMS sendiri memantau pengedaran seragam data dan beban, dengan mengambil kira sumber perkakasan yang tersedia. Adalah mungkin untuk menggunakan konfigurasi yang diedarkan secara geografi meliputi beberapa pusat data di bahagian yang berlainan di dunia.
  • Sokongan untuk model ketekalan yang kukuh dan transaksi ACID apabila memproses pertanyaan yang merangkumi berbilang nod dan jadual. Untuk meningkatkan prestasi, anda boleh melumpuhkan kawalan konsistensi secara terpilih.
  • Replikasi data automatik, pembahagian automatik (pembahagian, pemisahan) apabila saiz atau beban bertambah, dan pemuatan automatik dan pengimbangan data antara nod.
  • Menyimpan data terus pada peranti sekat menggunakan komponen PDisk asli dan lapisan VDisk. Di atas VDisk, DSProxy berjalan, yang menganalisis ketersediaan dan prestasi cakera untuk mengecualikannya jika masalah dikesan.
  • Seni bina fleksibel yang membolehkan anda membuat di atas YDB, pelbagai perkhidmatan, sehingga peranti blok maya dan baris gilir berterusan (baris gilir berterusan). Kesesuaian aplikasi untuk pelbagai jenis beban kerja, OLTP dan OLAP (pertanyaan analisis).
  • Sokongan untuk konfigurasi berbilang pengguna (berbilang) dan tanpa pelayan. Keupayaan untuk mengesahkan pelanggan. Pengguna boleh mencipta kluster dan pangkalan data maya mereka sendiri dalam infrastruktur yang dikongsi bersama, dengan mengambil kira penggunaan sumber pada tahap bilangan permintaan dan saiz data, atau dengan menyewa / menempah sumber pengkomputeran dan ruang storan tertentu.
  • Kemungkinan untuk melaraskan hayat rekod untuk pemadaman automatik data usang.

Sumber: opennet.ru

Tambah komen