Alibaba lançou o código-fonte do PolarDB

Alibaba lançado alguns dias atrás tomaram a decisão de liberar o código-fonte de seu sistema de gerenciamento de banco de dados distribuído "PolarDB" que é baseado em PostgreSQL, o código é aberto sob a licença Apache 2.0.

Para quem não está familiarizado com PolarDB, você deve saber que este é um banco de dados relacional baseado na nuvem desenvolvida pela Alibaba que estende os recursos do PostgreSQL para armazenamento de dados distribuídos com integridade e suporte para transações ACID no contexto de todo o banco de dados global, distribuído em diferentes nós do cluster.

PolarDB também suporta processamento de consulta SQL distribuída, fornecendo tolerância a falhas e armazenamento de dados redundante para reabastecer as informações após a falha de um ou mais nós. Se você precisar expandir seu armazenamento, basta adicionar novos nós ao cluster.

Polar DB consiste em duas partes: extensões e um conjunto de patches para PostgreSQL. Os patches estendem os recursos do núcleo do PostgreSQL e as extensões incluem componentes implementados separadamente do PostgreSQL, como um mecanismo de gerenciamento de transações distribuídas, serviços globais, um processador de consulta SQL distribuído, metadados adicionais, ferramentas para gerenciar um cluster, implementar um cluster e simplificar a migração de sistemas existentes para ele.

Os patches adicionam uma versão distribuída do mecanismo de controle de simultaneidade multiversão (MVCC) para o núcleo do PostgreSQL para diferentes níveis de isolamento. A maior parte da funcionalidade do PolarDB foi movida para extensões, o que reduz a dependência do PostgreSQL e simplifica a atualização e implantação de soluções baseadas no PolarDB (simplifica a transição para novas versões do PostgreSQL e mantém total compatibilidade com o PostgreSQL).

Existem três componentes básicos em um cluster: nós de banco de dados (DN), gerenciador de cluster (CM) e serviço de gerenciamento de transações (TM), além disso, um balanceador de carga de proxy pode estar envolvido. Cada um dos componentes é um processo separado e pode ser executado em diferentes servidores físicos. Os nós do banco de dados atendem às consultas SQL do cliente e ao mesmo tempo atuam como coordenadores da execução de consultas distribuídas com a participação de outros nós do banco de dados.

O administrador do cluster monitora o status de cada nó no banco de dados, armazena a configuração do cluster e fornece ferramentas para gerenciamento, backup, balanceamento de carga, atualização, inicialização e parada de nós. O serviço de gerenciamento de transações é responsável por manter a integridade geral em todo o cluster.

PolarDB é baseado na arquitetura de computação distribuída sem compartilhamento de acordo com a qual os dados são distribuídos durante o armazenamento para diferentes nós, sem usar um armazenamento comum para todos os nós e cada nó é responsável pelo pedaço de dados vinculado a ele e executa os dados de consulta relacionados.

Cada tabela é fragmentada usando hashes de chave primária. Se a solicitação cobrir dados localizados em nós diferentes, o mecanismo de execução de transação distribuída e o coordenador de transação são conectados para garantir atomicidade, consistência, isolamento e confiabilidade (ACID).

Para garantir a tolerância a falhas, cada segmento é replicado em pelo menos três nós. Para economizar recursos, os dados completos incluem apenas duas réplicas e uma é limitada ao armazenamento do log write-behind (WAL). Um dos dois nós de réplica completos é escolhido como o líder e participa do processamento da solicitação, enquanto o segundo nó atua como sobressalente para o segmento de dados em consideração e o terceiro participa da seleção do nó primário e pode ser usado para restaurar informações em caso de falha de dois nós com réplicas completas.

A replicação de dados entre os nós do cluster é organizada usando o algoritmo Paxos, que garante a determinação de consenso consistente em uma rede com nós potencialmente não confiáveis. Deve-se notar que a funcionalidade completa do PolarDB DBMS está planejada para ser lançada em três versões.

Por fim, se você estiver interessado em saber mais sobre o assunto, pode consultar os detalhes no link a seguir.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: AB Internet Networks 2008 SL
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.