알리바바는 PolarDB 소스 코드를 공개했다

알리바바 출시 몇일 전에 소스 코드를 공개하기로 결정했습니다. 분산 데이터베이스 관리 시스템 "PolarDB" PostgreSQL을 기반으로하는 코드가 열려 있습니다. Apache 2.0 라이선스에 따라.

PolarDB에 익숙하지 않은 사람들을 위해 이것은 관계형 데이터베이스입니다 Alibaba가 개발 한 클라우드를 기반으로 PostgreSQL 기능 확장 서로 다른 클러스터 노드에 분산 된 전체 글로벌 데이터베이스 컨텍스트에서 ACID 트랜잭션을 지원하고 무결성을 갖춘 분산 데이터 스토리지를위한 것입니다.

PolarDB도 분산 SQL 쿼리 처리 지원, 내결함성 및 중복 데이터 스토리지를 제공하여 하나 이상의 노드가 실패한 후 정보를 보충합니다. 스토리지를 확장해야하는 경우 클러스터에 새 노드를 추가하기 만하면됩니다.

폴라DB 두 부분으로 구성: PostgreSQL 용 확장 및 패치 세트. 패치는 PostgreSQL 코어의 기능을 확장하고 확장에는 분산 트랜잭션 관리 메커니즘, 글로벌 서비스, 분산 SQL 쿼리 프로세서, 추가 메타 데이터, 클러스터 관리 도구, 클러스터 구현 도구 등 PostgreSQL의 별도로 구현 된 구성 요소가 포함됩니다. 기존 시스템의 마이그레이션을 단순화합니다.

패치는 다중 버전 동시성 제어 메커니즘의 분산 버전을 추가합니다. (MVCC)를 다양한 격리 수준을 위해 PostgreSQL 코어에 추가합니다. 대부분의 PolarDB 기능이 확장 기능으로 이동되어 PostgreSQL에 대한 종속성을 줄이고 PolarDB 기반 솔루션의 업그레이드 및 배포를 단순화합니다 (PostgreSQL의 새 버전으로의 전환을 단순화하고 전체 PostgreSQL 호환성을 유지함).

세 가지 기본 구성 요소가 있습니다. 클러스터에서 : 데이터베이스 노드 (DN), 클러스터 관리자 (CM) 및 트랜잭션 관리 서비스 (TM), 또한 프록시로드 밸런서가 포함될 수 있습니다. 각 구성 요소는 별도의 프로세스이며 서로 다른 물리적 서버에서 실행할 수 있습니다. 데이터베이스 노드는 클라이언트 SQL 쿼리를 제공하는 동시에 다른 데이터베이스 노드의 참여와 함께 분산 쿼리 실행의 조정자 역할을합니다.

클러스터 관리자는 데이터베이스에있는 각 노드의 상태를 모니터링합니다. 클러스터 구성을 저장하고 노드 관리, 백업,로드 균형 조정, 업데이트, 시작 및 중지를위한 도구를 제공합니다. 트랜잭션 관리 서비스는 클러스터 전체에서 전체 무결성을 유지합니다.

PolarDB는 모든 노드에 대한 공통 스토리지를 사용하지 않고 서로 다른 노드에 저장하는 동안 데이터가 분산되는 비공유 분산 컴퓨팅 아키텍처를 기반으로하며, 각 노드는 연결된 데이터 조각을 담당하고 관련 쿼리 데이터를 실행합니다.

각 테이블은 기본 키 해시를 사용하여 조각화됩니다. 요청이 서로 다른 노드에있는 데이터를 포함하는 경우 분산 트랜잭션 실행 엔진과 트랜잭션 조정자가 연결되어 원 자성, 일관성, 격리 및 안정성 (ACID)을 보장합니다.

내결함성을 보장하기 위해 각 세그먼트는 XNUMX 개 이상의 노드에 복제됩니다. 리소스를 절약하기 위해 전체 데이터에는 XNUMX 개의 복제본 만 포함되고 하나는 WAL (Write-Behind Log) 저장으로 제한됩니다. 두 개의 전체 복제본 노드 중 하나가 리더로 선택되어 요청 처리에 참여하고, 두 번째 노드는 고려중인 데이터 세그먼트의 예비 역할을하고, 세 번째 노드는 기본 노드 선택에 참여하여 복원에 사용할 수 있습니다. 전체 복제본이있는 두 노드에 장애가 발생한 경우 정보를 제공합니다.

클러스터 노드 간의 데이터 복제는 잠재적으로 신뢰할 수없는 노드가있는 네트워크에서 일관된 합의 결정을 보장하는 Paxos 알고리즘을 사용하여 구성됩니다. PolarDB DBMS의 모든 기능은 세 가지 버전으로 출시 될 예정입니다.

마지막으로 그것에 대해 더 알고 싶다면 다음 링크의 세부 사항.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자: AB Internet Networks 2008 SL
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.