Alibaba zverejnila zdrojový kód PolarDB

Alibaba prepustená pred pár dňami sa rozhodli vydať zdrojový kód servera váš distribuovaný systém správy databázy „PolarDB“ ktorý je založený na PostgreSQL, je kód otvorený na základe licencie Apache 2.0.

Pre tých, ktorí PolarDB nepoznajú, mali by ste to vedieť toto je relacna databaza na základe cloudu vyvinutého spoločnosťou Alibaba rozširuje možnosti PostgreSQL pre distribuované úložisko dát s integritou a podporou transakcií ACID v kontexte celej globálnej databázy distribuovanej cez rôzne uzly klastra.

PolarDB tiež podporuje distribuované spracovanie dotazov SQL, poskytujúci odolnosť proti chybám a nadbytočné dátové úložisko na doplnenie informácií po zlyhaní jedného alebo viacerých uzlov. Ak potrebujete rozšíriť svoje úložisko, stačí do klastra pridať nové uzly.

Polárny DB sa skladá z dvoch častí: rozšírenia a sada opráv pre PostgreSQL. Opravy rozširujú možnosti jadra PostgreSQL a rozšírenia zahŕňajú komponenty implementované oddelene od PostgreSQL, ako napríklad mechanizmus riadenia distribuovaných transakcií, globálne služby, distribuovaný procesor dotazov SQL, ďalšie metadáta, nástroje na správu klastra, implementácia klastra a zjednodušiť migráciu existujúcich systémov na ňu.

Opravy pridávajú distribuovanú verziu multiverzného mechanizmu riadenia súbežnosti (MVCC) do jadra PostgreSQL pre rôzne úrovne izolácie. Väčšina funkcií PolarDB bola presunutá do rozšírení, čo znižuje závislosť od PostgreSQL a zjednodušuje aktualizáciu a nasadenie riešení založených na PolarDB (zjednodušuje prechod na nové verzie PostgreSQL a zachováva úplnú kompatibilitu s PostgreSQL).

Existujú tri základné komponenty v klastri: databázové uzly (DN), správca klastrov (CM) a služba správy transakcií (TM), navyše môže byť zahrnutý nástroj na vyrovnávanie zaťaženia proxy servera. Každá z komponentov je samostatným procesom a môže bežať na rôznych fyzických serveroch. Uzly databázy slúžia na dotazy klienta SQL a súčasne pôsobia ako koordinátori vykonávania distribuovaných dotazov za účasti ďalších uzlov databázy.

Správca klastra monitoruje stav každého uzla v databáze, ukladá konfiguráciu klastra a poskytuje nástroje na správu, zálohovanie, vyvažovanie záťaže, aktualizáciu, spustenie a zastavenie uzlov. Služba riadenia transakcií je zodpovedná za udržiavanie celkovej integrity v klastri.

PolarDB je založený na distribuovanej výpočtovej architektúre Shared-nothing, podľa ktorej sú údaje distribuované počas ukladania do rôznych uzlov bez použitia spoločného úložiska pre všetky uzly a každý uzol je zodpovedný za časť údajov, ktoré sú s ním spojené, a vykonáva súvisiace údaje z dotazov.

Každá tabuľka je fragmentovaná pomocou hashov primárneho kľúča. Ak žiadosť pokrýva údaje umiestnené na rôznych uzloch, sú distribuovaný mechanizmus na vykonávanie transakcií a koordinátor transakcií prepojení, aby sa zaistila atomicita, konzistencia, izolácia a spoľahlivosť (ACID).

Aby sa zabezpečila odolnosť proti chybám, každý segment sa replikuje najmenej na troch uzloch. Aby sa ušetrili prostriedky, úplné údaje obsahujú iba dve repliky a jedna je obmedzená na ukladanie denníka WAL (write-behind log). Jeden z dvoch plne replikovaných uzlov je vybraný ako vedúci a podieľa sa na spracovaní žiadosti, zatiaľ čo druhý uzol slúži ako náhradný pre uvažovaný dátový segment a tretí sa podieľa na výbere primárneho uzla a je možné ho použiť na obnovenie. informácie v prípade poruchy dvoch uzlov s úplnými replikami.

Replikácia údajov medzi uzlami klastra je organizovaná pomocou algoritmu Paxos, ktorý zaisťuje konzistentné stanovenie konsenzu v sieti s potenciálne nedôveryhodnými uzlami. Je potrebné poznamenať, že úplná funkčnosť PolarDB DBMS sa plánuje vydať v troch verziách.

Nakoniec, ak máte záujem dozvedieť sa o tom viac, môžete sa poradiť podrobnosti v nasledujúcom odkaze.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.