MariaDB
 sql >> Base de Dados >  >> RDS >> MariaDB

Uma visão geral do novo DBaaS do MariaDB - SkySQL

MariaDB lançou recentemente sua nova oferta de DBaaS, SkySQL. Pode ser uma surpresa para alguns, mas este foi um movimento antecipado do MariaDB, pois eles têm promovido ativamente produtos de última geração para serviços corporativos nos últimos anos e têm competido ativamente com os grandes fornecedores do mercado.

Antes do lançamento do SkySQL,  MariaDB trabalhava em contêineres e gráficos do Helm desde 2018. O SkySQL oferece disponibilidade de banco de dados para várias regiões ao configurar e iniciar sua instância de banco de dados.

O que é MariaDB SkySQL?

MariaDB SkySQL é uma oferta de DBaaS, o que significa que é um serviço de banco de dados totalmente gerenciado e é gerenciado em um serviço de nuvem usando o Google Cloud Platform (GCP). Observe que o banco de dados oferecido pelo MariaDB não é a edição da comunidade. Na verdade, é o MariaDB Enterprise Server ao lado do MariaDB ColumnStore (ou ambos).

Os benefícios de usar esta oferta em relação às ofertas de serviços MariaDB do Amazon RDS ou do Banco de Dados Microsoft Azure são o controle de versão (o SkySQL garante que os usuários estejam na versão mais recente do produto), além de ter suporte analítico e transacional.

Integrado com seu DBaaS está um gerenciador de configuração, monitoramento com métricas e gráficos em tempo real e uma análise de carga de trabalho que mostra seu serviço de aprendizado de máquina que identifica mudanças nos padrões de carga de trabalho para dimensionamento proativo de recursos e consistência de serviço. É um produto atraente para os usuários mais ávidos de produtos corporativos MariaDB para usar MariaDB SkySQL.

Recursos do MariaDB SkySQL

MariaDB SkySQL possui todo o poder da plataforma MariaDB combinando diferentes tipos de seus tipos de banco de dados de transações (configuração comum para OLTP), análise ou data warehousing (OLAP), ou se requer uma configuração híbrida (combinação de banco de dados transacional e analítico). O seguinte abaixo fornece a definição direta dessas plataformas de serviços de banco de dados em destaque:

Transações

Otimizado para processamento rápido de transações em armazenamento de bloco persistente – com divisão de leitura/gravação e failover automático configurado e habilitado para balanceamento de carga transparente e alta disponibilidade.

Análise

Otimizado para executar consultas ad hoc em bilhões de linhas sem índices, combinando dados colunares em armazenamento de objetos de baixo custo com processamento de consulta multithread – perfeito para armazenamento/análise de dados em nuvem.

Híbrido ou ambos

Otimizado para processamento inteligente de transações na nuvem, armazenando dados como linhas no armazenamento de bloco persistente e como colunas no armazenamento de objetos – crie aplicativos modernos enriquecendo as transações com análises em tempo real.

O MariaDB SkySQL também está equipado com seu suporte de classe mundial que está incluído no preço (suporte padrão) assim que você registrar e iniciar uma instância de banco de dados. Existem outras opções que você também pode considerar se estiver em uma configuração de nível empresarial. Você pode optar pelo tipo de suporte corporativo e platinum. Veja mais detalhes em sua página de preços.

Além desses recursos, eles também fornecem recursos de monitoramento para verificar o status e a integridade geral de seus serviços de banco de dados. Embora, no momento da redação deste artigo, ele esteja atualmente na Visualização Técnica, você já pode usar o serviço e coletar métricas para verificações mais granulares e em tempo real de sua instância de banco de dados.

A pilha de disponibilidade

Esta plataforma SkySQL é arquitetada com confiabilidade de serviço para fornecer serviços de classe mundial para clientes e consumidores. Independentemente da estabilidade da plataforma, ela sempre deve falhar para determinar a resiliência do produto e a rapidez com que ele pode estar disponível caso ocorra uma interrupção e também reduzir o RPO (Recovery Point Objective).

Para infraestrutura, eles usam o Google Cloud Platform (GCP) e os serviços dependem muito do Google Kubernetes Engine (GKE), um componente do GCP. Isso significa muito para a própria plataforma, já que os serviços do MariaDB SkySQL são executados em contêineres desenvolvidos pelo Kubernetes. Ele tem a capacidade de oferecer resiliência de clusters regionais do GKE, que incluem várias zonas de disponibilidade em uma região. Ele adquire a funcionalidade de recuperação automática do Kubernetes e também o alto escalonamento de SLA do GCP com 99,5% de tempo de atividade.

Embora dependa do GKE, isso significa que ele herda a natureza do Kubernetes de poder reiniciar os contêineres com falha, cercando um contêiner não íntegro que é automaticamente eliminado se detectado como com falha. Também os contêineres mortos são substituídos automaticamente e acontecem em segundo plano, o que é imperceptível a olho nu na perspectiva do cliente.

Multi-Zones são implementadas para uma configuração primária/réplica, que é uma configuração de banco de dados do serviço de transações. Ele provisiona os primários de replicação em uma zona separada dentro de uma região das réplicas de replicação.

MaxScale funciona no topo para ambientes de tipo transacional (primário/réplica), como OLTP ou o serviço de Transações, enquanto lida com o failover automático -- abrange os serviços de Transações e Híbridos. MaxScale monitora e verifica o status de primários e réplicas. Se falhar, o MaxScale fará o trabalho de promover a réplica mais atualizada e torná-la a nova primária. O restante das réplicas é atualizado apontando para o novo primário. O serviço Transações e Híbrido abrange a autocorreção para instâncias MaxScale. O que significa que, se uma instância MaxScale falhar, ela será reiniciada ou substituída dependendo do estado do problema.

Todos os tipos de serviços MariaDB SkySQL fazem auto-recuperação para que estejam sempre altamente disponíveis para uso. Isso significa que, se uma instância específica falhar, seja uma instância MariaDB Enterprise Server ou MaxScale ou uma instância do Kubernetes, ela sempre adapta a resiliência que o Kubernetes faz.

Usando MariaDB SkySQL

Tudo o que você precisa fazer é se registrar na página principal do SkySQL. Se você tiver uma conta, então você pode fazer o login. Requer que você coloque seus métodos de pagamento, como cartão de crédito/débito, mas você pode entrar em contato com eles para obter mais informações sobre isso.

Ao iniciar um serviço, há três opções que você pode escolher. Ver abaixo:

Teste a plataforma e configurei um serviço de Transações. Isso significa que já configurei uma forma de cobrança ou pagamento antes desta ação.

Durante a configuração, você pode selecionar em qual região deseja implantar seu serviço. Também tem uma visão geral do custo em que tipo de instância você vai selecionar. Ver abaixo:

e especifique o número de réplicas e seu tamanho de armazenamento de transações e, por último, o nome do serviço como abaixo:

Como ele é executado na nuvem usando o GCP, está basicamente usando os recursos como armazenamento em bloco e seu desempenho, disponíveis no Google Cloud.

O lançamento de seus serviços de banco de dados pode levar algum tempo antes de estar disponível para uso. No final, demorei cerca de 10 minutos, então você pode ter que fazer sua pausa para o café primeiro e voltar quando estiver pronto para uso em produção. Uma vez ativado, é assim que aparece no seu painel:

Clicar em seu serviço recém-lançado mostra mais opções para gerenciar seu banco de dados. É mais ou menos simples e muito direto, nada de interface do usuário extravagante.

Tudo o que você precisa fazer é especificar os tipos de endereços IP necessários para acessar ou fazer interface com o servidor de banco de dados. Clicar no botão Mostrar credenciais fornecerá informações sobre seu nome de usuário, senha, download de sua cadeia de autoridade de certificação e permitirá que você se conecte e altere a senha.

A propósito, as informações acima já são sucata e excluídas, expondo-as não impõe nenhuma preocupação de segurança.

Basicamente, posso testar isso e já forneci o endereço IP que deve ser incluído na lista de permissões. Portanto, conectar-se via cliente mostra que você tem uma conexão mais segura que canaliza sobre a camada TLS/SSL:

[[email protected] ~]$ mysql --host sky0001841.mdb0001721.db.skysql.net --port 5001 --user DB00002448 -p --ssl-ca ~/skysql_chain.pem

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 32

Server version: 5.5.5-10.4.12-6-MariaDB-enterprise-log MariaDB Enterprise Server



Copyright (c) 2009-2020 Percona LLC and/or its affiliates

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.



Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.



Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.



mysql> select @@hostname;

+-------------------+

| @@hostname        |

+-------------------+

| paultest-mdb-ms-0 |

+-------------------+

1 row in set (0.25 sec)



mysql> show schemas;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

+--------------------+

3 rows in set (0.25 sec)



mysql> \s

--------------

mysql  Ver 14.14 Distrib 5.6.48-88.0, for Linux (x86_64) using  6.2



Connection id: 32

Current database:

Current user: [email protected]

SSL: Cipher in use is ECDHE-RSA-AES128-GCM-SHA256

Current pager: stdout

Using outfile: ''

Using delimiter: ;

Server version: 5.5.5-10.4.12-6-MariaDB-enterprise-log MariaDB Enterprise Server

Protocol version: 10

Connection: sky0001841.mdb0001721.db.skysql.net via TCP/IP

Server characterset: utf8mb4

Db     characterset: utf8mb4

Client characterset: utf8

Conn.  characterset: utf8

TCP port: 5001

Uptime: 10 min 17 sec



Threads: 12  Questions: 2108  Slow queries: 715  Opens: 26  Flush tables: 1  Open tables: 20  Queries per second avg: 3.416

--------------

O Gerenciador de Configuração

O MariaDB SkySQL também está equipado com um gerenciador de configuração que permite aplicar alterações, criar versões de suas próprias atualizações de configuração ou clonar uma configuração existente e aplicá-la a vários serviços que você possui em sua conta MariaDB SkySQL . De alguma forma, ele compartilha alguma abordagem de manipulação de configuração com nosso Gerenciamento de Arquivos de Configuração Por exemplo,

e oferece as seguintes ações que você pode fazer com ele,

Versões anteriores de sua configuração ainda são visíveis, o que adiciona mais conveniência ao gerenciar seu banco de dados e gerenciamento de mudanças de configuração.

Análise e monitoramento de carga de trabalho

No momento em que este artigo foi escrito, esses dois recursos, que são Análise e Monitoramento de Carga de Trabalho, estão atualmente na Visualização Técnica. No entanto, o Workload Analysis ainda não está pronto para uso, mas o Monitoring já mostra os dados coletados de suas instâncias de banco de dados. Um exemplo disso é mostrado abaixo,

Na verdade, ele usa o Grafana para exibir as métricas e gráficos. Ele oferece outras visualizações para você investigar a integridade de seu banco de dados, consultas, atrasos e sistema. Ver abaixo,

Você pode verificar uma análise de carga de trabalho aqui para sentir como funciona.

Conclusão

Embora o MariaDB SkySQL seja um serviço totalmente novo, você pode esperar que as melhorias com este serviço venham rapidamente. Esta é uma grande jogada do MariaDB, pois os usuários não estão limitados apenas às plataformas disponíveis da comunidade, mas agora podem usar o nível corporativo a um preço razoável