Alibaba mengeluarkan kod sumber PolarDB

Alibaba dibebaskan beberapa hari yang lalu telah membuat keputusan untuk melepaskan kod sumber sistem pengurusan pangkalan data diedarkan anda "PolarDB" yang berdasarkan PostgreSQL, kodnya terbuka di bawah lesen Apache 2.0.

Bagi mereka yang tidak biasa dengan PolarDB, anda harus mengetahui perkara itu ini adalah pangkalan data hubungan berdasarkan awan yang dikembangkan oleh Alibaba bahawa meluaskan keupayaan PostgreSQL untuk penyimpanan data yang diedarkan dengan integriti dan sokongan untuk transaksi ACID dalam konteks keseluruhan pangkalan data global, yang diedarkan di pelbagai kluster yang berlainan.

PolarDB juga menyokong pemprosesan pertanyaan SQL yang diedarkan, memberikan toleransi kesalahan dan penyimpanan data berlebihan untuk mengisi maklumat setelah satu atau lebih nod gagal. Sekiranya anda perlu memperluaskan storan anda, cukup tambahkan nod baru ke kluster.

DB kutub terdiri daripada dua bahagian: sambungan dan sekumpulan tambalan untuk PostgreSQL. Tambalan memperluaskan keupayaan teras PostgreSQL dan peluasannya merangkumi komponen PostgreSQL yang dilaksanakan secara berasingan, seperti mekanisme pengurusan transaksi yang diedarkan, perkhidmatan global, pemproses pertanyaan SQL yang diedarkan, metadata tambahan, alat untuk mengurus kluster, menerapkan kluster, dan permudahkan penghijrahan sistem yang ada ke dalamnya.

Tambalan tersebut menambah versi mekanisme kawalan serentak multiversion yang diedarkan (MVCC) ke teras PostgreSQL untuk tahap pengasingan yang berbeza. Sebilangan besar fungsi PolarDB telah dipindahkan ke sambungan, yang mengurangkan kebergantungan pada PostgreSQL dan mempermudah peningkatan dan penggunaan penyelesaian berasaskan PolarDB (mempermudah peralihan ke versi baru PostgreSQL dan mengekalkan keserasian PostgreSQL sepenuhnya).

Terdapat tiga komponen asas dalam kelompok: nod pangkalan data (DN), pengurus kluster (CM) dan perkhidmatan pengurusan transaksi (TM), tambahan, pengimbang beban proksi mungkin terlibat. Setiap komponen adalah proses yang berasingan dan dapat dijalankan pada pelayan fizikal yang berbeza. Nod pangkalan data melayani pertanyaan SQL pelanggan dan pada masa yang sama bertindak sebagai penyelaras pelaksanaan pertanyaan yang diedarkan dengan penyertaan nod pangkalan data yang lain.

Pentadbir kluster memantau status setiap nod dalam pangkalan data, menyimpan konfigurasi kluster dan menyediakan alat untuk mengurus, membuat sandaran, menyeimbangkan beban, mengemas kini, memulakan, dan menghentikan node. Perkhidmatan pengurusan urus niaga bertanggungjawab untuk menjaga integriti keseluruhan di seluruh kluster.

PolarDB didasarkan pada seni bina pengkomputeran yang diedarkan Shared-nothing mengikut mana data diedarkan semasa penyimpanan ke nod yang berlainan, tanpa menggunakan penyimpanan biasa untuk semua nod dan setiap node bertanggungjawab untuk sekeping data yang dihubungkan dengannya dan melaksanakan data pertanyaan yang berkaitan.

Setiap jadual diasingkan menggunakan hash kunci utama. Sekiranya permintaan merangkumi data yang terletak di node yang berlainan, mesin pelaksanaan transaksi yang diedarkan dan koordinator transaksi disambungkan untuk memastikan keberanian, konsistensi, pengasingan, dan kebolehpercayaan (ACID).

Untuk memastikan toleransi kesalahan, setiap segmen direplikasi di sekurang-kurangnya tiga nod. Untuk menjimatkan sumber, data lengkap hanya merangkumi dua replika dan satu hanya terhad untuk menyimpan log tulis (WAL). Salah satu daripada dua node replika penuh dipilih sebagai pemimpin dan mengambil bahagian dalam pemprosesan permintaan, sementara simpul kedua bertindak sebagai cadangan untuk segmen data yang dipertimbangkan, dan yang ketiga mengambil bahagian dalam pemilihan simpul utama dan dapat digunakan untuk memulihkan maklumat sekiranya berlaku kegagalan dua nod dengan replika penuh.

Replikasi data antara node kluster diatur menggunakan algoritma Paxos, yang memastikan penentuan konsensus yang konsisten dalam rangkaian dengan node yang berpotensi tidak dipercayai. Perlu diingatkan bahawa fungsi penuh DBMS PolarDB dirancang untuk dikeluarkan dalam tiga versi.

Akhirnya, jika anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh berunding perinciannya di pautan berikut.


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.