Alibaba пусна изходния код на PolarDB

Alibaba освободен преди няколко дни са взели решение да пуснат изходния код на вашата система за управление на разпределена база данни "PolarDB" който се основава на PostgreSQL, кодът е отворен под лиценза Apache 2.0.

За тези, които не са запознати с PolarDB, трябва да знаете това това е релационна база данни въз основа на облака, разработен от Alibaba, че разширява възможностите на PostgreSQL за разпределено съхранение на данни с цялост и поддръжка на ACID транзакции в контекста на цялата глобална база данни, разпределена между различни клъстерни възли.

PolarDB също поддържа разпределена обработка на SQL заявки, осигурявайки толерантност към грешки и излишно съхранение на данни за попълване на информация след неуспех на един или повече възли. Ако трябва да разширите хранилището си, просто добавете нови възли към клъстера.

Polar DB се състои от две части: разширения и набор от кръпки за PostgreSQL. Пачовете разширяват възможностите на ядрото PostgreSQL, а разширенията включват компоненти, внедрени отделно от PostgreSQL, като разпределен механизъм за управление на транзакции, глобални услуги, разпределен процесор на SQL заявки, допълнителни метаданни, инструменти за управление на клъстер, внедряване на клъстер и опростяване на миграцията на съществуващи системи към него.

Кръпките добавят разпределена версия на мултиверсионния механизъм за управление на паралелността (MVCC) към ядрото PostgreSQL за различни нива на изолация. Повечето от функционалностите на PolarDB са преместени в разширения, което намалява зависимостта от PostgreSQL и опростява надстройката и внедряването на решения, базирани на PolarDB (опростява прехода към нови версии на PostgreSQL и поддържа пълната съвместимост на PostgreSQL).

Има три основни компонента в клъстер: възли на база данни (DN), клъстер мениджър (CM) и услуга за управление на транзакции (TM), освен това може да бъде включен прокси балансир на товара. Всеки от компонентите е отделен процес и може да работи на различни физически сървъри. Възлите на базата данни обслужват клиентски SQL заявки и в същото време действат като координатори на изпълнението на разпределени заявки с участието на други възли на база данни.

Администраторът на клъстера следи състоянието на всеки възел в базата данни, съхранява конфигурацията на клъстера и предоставя инструменти за управление, архивиране, балансиране на натоварването, актуализиране, стартиране и спиране на възли. Услугата за управление на транзакции е отговорна за поддържането на цялостната цялост в целия клъстер.

PolarDB се основава на разпределената изчислителна архитектура Shared-nothing, според която данните се разпределят по време на съхранението до различни възли, без да се използва общо хранилище за всички възли и всеки възел е отговорен за частта от данните, свързана с него, и изпълнява свързани данни за заявка.

Всяка таблица е фрагментирана с помощта на хешове на първичен ключ. Ако заявката обхваща данни, разположени на различни възли, разпределената машина за изпълнение на транзакции и координаторът на транзакции са свързани, за да осигурят атомност, последователност, изолация и надеждност (ACID).

За да се гарантира толерантност към повреди, всеки сегмент се репликира в поне три възли. За да се спестят ресурси, пълните данни включват само две реплики и едната е ограничена до съхраняване на регистъра за изоставане (WAL). Един от двата възела с пълна реплика е избран за водещ и участва в обработката на заявки, докато вторият възел действа като резервен за разглеждания сегмент от данни, а третият участва в избора на основния възел и може да се използва за възстановяване информация в случай на повреда на два възела с пълни реплики.

Репликацията на данни между клъстерни възли се организира с помощта на алгоритъма Paxos, който осигурява последователно определяне на консенсус в мрежа с потенциално ненадеждни възли. Трябва да се отбележи, че пълната функционалност на СУБД PolarDB се планира да бъде пусната в три версии.

И накрая, ако се интересувате да научите повече за това, можете да се консултирате подробностите в следната връзка.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорник за данните: AB Internet Networks 2008 SL
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.