Alibaba je objavila PolarDB izvorni kod

Alibaba pušten prije nekoliko dana donijeli su odluku o objavljivanju izvornog koda vaš sustav upravljanja distribuiranom bazom podataka "PolarDB" koji se temelji na PostgreSQL-u, kôd je otvoren pod licencom Apache 2.0.

Za one koji nisu upoznati s PolarDB-om, trebali biste to znati ovo je relacijska baza podataka na temelju oblaka koji je razvio Alibaba koji proširuje mogućnosti PostgreSQL-a za raspodijeljenu pohranu podataka s integritetom i podrškom za ACID transakcije u kontekstu cjelokupne globalne baze podataka, raspoređenih kroz različite čvorove klastera.

PolarDB također podržava distribuiranu obradu SQL upita, pružajući toleranciju grešaka i suvišnu pohranu podataka za nadopunu podataka nakon što jedan ili više čvorova ne uspije. Ako trebate proširiti svoju pohranu, samo dodajte nove čvorove u klaster.

Polarni DB sastoji se od dva dijela: proširenja i skup zakrpa za PostgreSQL. Zakrpe proširuju mogućnosti jezgre PostgreSQL, a proširenja uključuju zasebno implementirane komponente PostgreSQL-a, poput distribuiranog mehanizma za upravljanje transakcijama, globalne usluge, distribuirani procesor upita SQL, dodatne metapodatke, alate za upravljanje klasterom, implementaciju klastera i pojednostaviti migraciju postojećih sustava na nju.

Zakrpe dodaju distribuiranu verziju multiverzijskog mehanizma kontrole paralelnosti (MVCC) na jezgru PostgreSQL za različite razine izolacije. Većina funkcionalnosti PolarDB premještena je na proširenja, što smanjuje ovisnost o PostgreSQL-u i pojednostavljuje nadogradnju i implementaciju rješenja temeljenih na PolarDB (pojednostavljuje prijelaz na nove verzije PostgreSQL-a i održava potpunu kompatibilnost PostgreSQL-a).

Tri su osnovne komponente u klasteru: čvorovi baze podataka (DN), upravitelj klastera (CM) i usluga upravljanja transakcijama (TM), dodatno, može biti uključen proxy uravnoteživač opterećenja. Svaka od komponenata zaseban je postupak i može se izvoditi na različitim fizičkim poslužiteljima. Čvorovi baze podataka opslužuju SQL upite klijenta i istodobno djeluju kao koordinatori izvršavanja distribuiranih upita uz sudjelovanje drugih čvorova baze podataka.

Administrator klastera nadgleda status svakog čvora u bazi podataka, pohranjuje konfiguraciju klastera i pruža alate za upravljanje, izradu sigurnosnih kopija, uravnoteženje opterećenja, ažuriranje, pokretanje i zaustavljanje čvorova. Usluga upravljanja transakcijama odgovorna je za održavanje cjelokupnog integriteta kroz klaster.

PolarDB se temelji na distribuiranoj računalnoj arhitekturi Shared-nothing, prema kojoj se podaci distribuiraju tijekom pohrane na različite čvorove, bez upotrebe zajedničke pohrane za sve čvorove, a svaki čvor odgovoran je za dio podataka koji je povezan s njim i izvršava povezane podatke upita.

Svaka je tablica fragmentirana pomoću hashova primarnog ključa. Ako zahtjev obuhvaća podatke koji se nalaze na različitim čvorovima, distribuirani mehanizam za izvršavanje transakcija i koordinator transakcije povezani su kako bi se osigurala atomskost, dosljednost, izolacija i pouzdanost (ACID).

Kako bi se osigurala tolerancija kvarova, svaki se segment replicira na najmanje tri čvora. Da biste uštedjeli resurse, cjeloviti podaci uključuju samo dvije replike, a jedna je ograničena na spremanje zapisnika o zaostajanju (WAL). Jedan od dva čvora s cjelovitom replikom odabran je za voditelja i sudjeluje u obradi zahtjeva, dok drugi čvor djeluje kao rezervni za razmatrani segment podataka, a treći sudjeluje u odabiru primarnog čvora i može se koristiti za obnavljanje informacije u slučaju kvara dva čvora s punim replikama.

Replikacija podataka između čvorova klastera organizirana je pomoću algoritma Paxos, koji osigurava dosljedno određivanje konsenzusa u mreži s potencijalno nepouzdanim čvorovima. Valja napomenuti da se planira puna funkcionalnost PolarDB DBMS-a objaviti u tri verzije.

Napokon, ako vas zanima više o tome, možete se posavjetovati pojedinosti na sljedećem linku.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.