Alibaba hefur opnað kóðann fyrir PolarDB, dreift DBMS byggt á PostgreSQL.

Fjarvistarsönnun, eitt stærsta kínverska upplýsingatæknifyrirtækið, hefur opnað frumkóðann fyrir dreifða DBMS PolarDB, byggt á PostgreSQL. PolarDB eykur getu PostgreSQL með verkfærum fyrir dreifða gagnageymslu með heilindum og stuðningi fyrir ACID viðskipti í samhengi við allan alþjóðlega gagnagrunninn sem er dreift yfir mismunandi klasahnúta. PolarDB styður einnig dreifða SQL fyrirspurnavinnslu, bilanaþol og óþarfa gagnageymslu til að endurheimta upplýsingar eftir að einn eða fleiri hnútar mistakast. Ef þú þarft að stækka geymsluna þína geturðu einfaldlega bætt nýjum hnútum við þyrpinguna. Kóðinn er opinn undir Apache 2.0 leyfinu.

PolarDB samanstendur af tveimur hlutum - viðbótum og setti plástra fyrir PostgreSQL. Plástrar auka getu PostgreSQL kjarna, og viðbætur innihalda íhluti sem eru útfærðir aðskildir frá PostgreSQL, svo sem dreifða færslustjórnunarkerfi, alþjóðlega þjónustu, dreifðan SQL fyrirspurnarörgjörva, viðbótarlýsigögn, verkfæri til að stjórna klasanum, útfæra klasa og einfalda flutningur núverandi kerfa til þess.

Plástrarnir bæta við PostgreSQL kjarna dreifðri útgáfu af vélbúnaði til að stjórna samhliða aðgangi að gögnum með því að nota multiversion (MVCC, Multiversion concurrency control) fyrir mismunandi einangrunarstig. Megnið af virkni PolarDB er innifalið í viðbótum, sem dregur úr háð PostgreSQL og einfaldar uppfærslu og innleiðingu lausna byggðar á PolarDB (það einfaldar umskipti yfir í nýjar útgáfur af PostgreSQL og viðheldur fullum eindrægni við PostgreSQL). Til að stjórna klasanum er pgxc_ctl verkfærasettið notað, byggt á svipuðu tóli frá PostgreSQL-XC og PostgreSQL-XL.

Það eru þrír grunnþættir í klasa: gagnagrunnshnútar (DN), klasastjóri (CM) og viðskiptastjórnunarþjónusta (TM). Að auki er hægt að nota umboðshleðslujafnara. Hver hluti er sérstakt ferli og hægt er að keyra hann á öðrum netþjóni. Gagnagrunnshnútar þjóna SQL fyrirspurnum frá viðskiptavinum og starfa á sama tíma sem samræmingaraðilar dreifðrar fyrirspurnar með þátttöku annarra gagnagrunnshnúta. Klasastjórinn fylgist með stöðu hvers gagnagrunnshnúts, geymir klasastillingarnar og útvegar verkfæri til að stjórna, taka öryggisafrit, álagsjafna, uppfæra, ræsa og stöðva hnúta. Viðskiptastjórnunarþjónustan er ábyrg fyrir því að viðhalda heildar heilindum í öllum klasanum.

Alibaba hefur opnað kóðann fyrir PolarDB, dreift DBMS byggt á PostgreSQL.

PolarDB er byggt á Shared-nothing dreifðri tölvuarkitektúr, samkvæmt því er gögnum dreift þegar þau eru geymd á mismunandi hnútum, án þess að nota sameiginlega geymslu fyrir alla hnúta, og hver hnút ber ábyrgð á þeim hluta gagna sem tengjast honum og framkvæmir fyrirspurnir sem tengjast honum. við gögnin. Hver tafla er skipt í hluta (sharding) með því að nota kjötkássa byggt á aðallyklinum. Ef beiðnin nær yfir gögn sem staðsett eru á mismunandi hnútum, eru dreifð færsluframkvæmdarkerfi og viðskiptasamhæfing virkjuð til að tryggja atómvirkni, samkvæmni, einangrun og áreiðanleika (ACID).

Til að tryggja bilunarþol er hver hluti afritaður í að minnsta kosti þrjá hnúta. Til að spara auðlindir innihalda heildargögnin aðeins tvær eftirmyndir og ein er takmörkuð við að geyma afturritunarskrána (WAL). Einn af tveimur hnútum með fullum eftirlíkingum er kosinn leiðtogi og tekur þátt í að vinna úr beiðnum. Annar hnúturinn virkar sem varahluti fyrir viðkomandi gagnahluta og sá þriðji tekur þátt í vali á fremsta hnút og er hægt að nota til að endurheimta upplýsingar ef bilun verður á tveimur hnútum með fullum eftirlíkingum. Gagnaafritun milli þyrpingahnúta er skipulögð með Paxos reikniritinu, sem tryggir samræmda skilgreiningu á samstöðu í neti með hugsanlega óáreiðanlegum hnútum.

Það er tekið fram að fyrirhugað er að birta fulla virkni PolarDB DBMS í þremur útgáfum: Í fyrstu útgáfunni verða verkfæri fyrir afritun, mikið framboð og klasastjórnun birt. Önnur útgáfan mun innihalda dreifð viðskiptakerfi sem styður ACID yfir hnúta og dreifða SQL framkvæmd. Þriðja útgáfan mun innihalda viðbót fyrir PostgreSQL og verkfæri fyrir sveigjanlega gagnadreifingu yfir hnúta, þar á meðal aðlögunarstaðsetningu hluta til að ná sem bestum árangri og getu til að stækka þyrpinguna með því að bæta við nýjum hnútum.

Heimild: opennet.ru

Bæta við athugasemd