Alibaba ga ut PolarDB-kildekoden

Alibaba løslatt noen dager siden har tatt beslutningen om å frigjøre kildekoden til ditt distribuerte databasesystem "PolarDB" som er basert på PostgreSQL, er koden åpen under Apache 2.0-lisensen.

For de som ikke er kjent med PolarDB, bør du vite det dette er en relasjonsdatabase basert på skyen utviklet av Alibaba at utvider PostgreSQL-funksjonene for distribuert datalagring med integritet og støtte for ACID-transaksjoner i sammenheng med hele den globale databasen, fordelt på forskjellige klyngenoder.

PolarDB også støtter distribuert SQL-behandling, som gir feiltoleranse og overflødig datalagring for å fylle på informasjon etter at en eller flere noder feiler. Hvis du trenger å utvide lagringsplassen, er det bare å legge til nye noder i klyngen.

Polar DB består av to deler: utvidelser og et sett med oppdateringer for PostgreSQL. Oppdateringene utvider funksjonene til PostgreSQL-kjernen, og utvidelsene inkluderer separate implementerte komponenter av PostgreSQL, for eksempel en distribuert transaksjonsadministrasjonsmekanisme, globale tjenester, en distribuert SQL-spørringsprosessor, tilleggsmetadata, verktøy for å administrere en klynge, implementere en klynge og forenkle migrasjonen av eksisterende systemer til den.

Lappene legger til en distribuert versjon av multiversion samtidighetskontrollmekanismen (MVCC) til PostgreSQL-kjernen for forskjellige isolasjonsnivåer. Det meste av PolarDB-funksjonaliteten er flyttet til utvidelser, noe som reduserer avhengigheten av PostgreSQL og forenkler oppgraderingen og distribusjonen av PolarDB-baserte løsninger (forenkler overgangen til nye versjoner av PostgreSQL og opprettholder full PostgreSQL-kompatibilitet).

Det er tre grunnleggende komponenter i en klynge: databasenoder (DN), cluster manager (CM) og transaksjonsadministrasjonstjeneste (TM), i tillegg kan en proxy-belastningsbalansering være involvert. Hver av komponentene er en egen prosess og kan kjøres på forskjellige fysiske servere. Databasenodene betjener SQL-spørringer fra klienter og fungerer samtidig som koordinatorer for utførelsen av distribuerte spørringer med deltagelse av andre databasenoder.

Klyngeadministratoren overvåker statusen til hver node i databasen, lagrer klyngekonfigurasjon og gir verktøy for å administrere, sikkerhetskopiere, lastbalansere, oppdatere, starte og stoppe noder. Transaksjonsadministrasjonstjenesten er ansvarlig for å opprettholde total integritet gjennom hele klyngen.

PolarDB er basert på Delt-ingenting-distribuert databehandlingsarkitektur, ifølge hvilken data distribueres under lagring til forskjellige noder, uten å bruke en felles lagring for alle noder, og hver node er ansvarlig for datadelen som er knyttet til den og utfører relaterte spørringsdata.

Hver tabell er fragmentert ved hjelp av primærnøkkelhash. Hvis forespørselen dekker data lokalisert på forskjellige noder, er den distribuerte transaksjonsutførelsesmotoren og transaksjonskoordinatoren koblet sammen for å sikre atomicitet, konsistens, isolasjon og pålitelighet (ACID).

For å sikre feiltoleranse replikeres hvert segment over minst tre noder. For å spare ressurser inkluderer de fullstendige dataene bare to replikaer, og en er begrenset til lagring av WAL. En av de to fullstendige replikanodene er valgt som leder og deltar i forespørselsbehandling, mens den andre noden fungerer som en reserve for datasegmentet som vurderes, og den tredje deltar i valget av den primære noden og kan brukes til å gjenopprette informasjon i tilfelle feil på to noder med full kopier.

Datareplikering mellom klyngenoder er organisert ved hjelp av Paxos-algoritmen, som sørger for konsistent bestemmelse i et nettverk med potensielt ikke-klarerte noder. Det skal bemerkes at den fulle funksjonaliteten til PolarDB DBMS er planlagt utgitt i tre versjoner.

Til slutt, hvis du er interessert i å vite mer om det, kan du konsultere detaljene i følgende lenke.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: AB Internet Networks 2008 SL
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.