Como funciona o Banco de Dados do Azure para MySQL

Concluído

Nesta unidade, você explora como o Banco de Dados do Azure para MySQL funciona, começando com sua arquitetura. Você também aprende como o serviço oferece alta disponibilidade, funcionalidade de backup e dimensionamento para atender às necessidades da sua carga de trabalho.

Banco de Dados do Azure para arquitetura MySQL

O diagrama a seguir descreve a arquitetura de uma instância do Banco de Dados do Azure para MySQL - Servidor Flexível.

Captura de tela de Um diagrama de arquitetura detalhado do Banco de Dados do Azure para MySQL em uma organização típica, conforme descrito anteriormente.

  1. A instância do MySQL é executada em uma VM do Azure.
  2. Os dados e os logs são armazenados no Armazenamento Premium do Azure.
  3. Os dados são replicados três vezes no armazenamento localmente redundante para backup e resiliência. O serviço também fornece opções para configurar backups de armazenamento com redundância de zona ou com redundância geográfica.
  4. Além disso, você tem a opção de co-localizar seus vários aplicativos cliente conectados ao servidor flexível MySQL, dentro da mesma zona de disponibilidade.

Você também pode optar pela alta disponibilidade redundante de mesma zona ou zona, que provisiona e mantém automaticamente uma réplica em espera.

Como funciona a alta disponibilidade

Para o Banco de Dados do Azure para MySQL - Servidor Flexível, dentro da zona de disponibilidade única, o seguinte processo ocorre após uma falha do servidor de hospedagem:

  1. O Azure provisiona uma nova máquina virtual (VM).
  2. O Azure mapeia o armazenamento e os arquivos de dados para a VM recém-provisionada.
  3. O mecanismo de banco de dados MySQL é colocado online.
  4. Os aplicativos cliente se reconectam à nova instância do MySQL.

Nota

Se você tiver provisionado alta disponibilidade entre zonas, um servidor de espera ativa será mantido em outra zona de disponibilidade na mesma região do Azure. Este servidor é uma réplica totalmente sincronizada do servidor primário. No caso de uma falha do servidor primário, o servidor hot standby pode assumir rapidamente o controle com o mínimo de interrupção, mantendo assim a disponibilidade do serviço.

Como funcionam os backups

Você pode usar backups para restaurar seu servidor para qualquer point-in-time dentro do período de retenção (35 dias, ou até 10 anos com retenção de longo prazo, na visualização).

Como funciona o dimensionamento

O dimensionamento no Banco de Dados do Azure para MySQL envolve ajustar os recursos de computação de acordo com as necessidades do aplicativo, que podem flutuar com base na demanda do usuário, na complexidade das operações processadas ou em outros fatores, como o crescimento do negócio. Essa flexibilidade é crucial para manter o desempenho ideal e a eficiência de custos.

Tipos de dimensionamento

  1. Dimensionamento vertical (Escalonamento para cima/para baixo)
    • Escala de computação: Refere-se à alteração da camada de computação do seu servidor flexível MySQL. O Azure oferece várias camadas de computação, cada uma projetada para atender a diferentes tipos de cargas de trabalho:
      • Burstable: Adequado para ambientes com picos intermitentes de uso da CPU que não exigem desempenho total contínuo da CPU.
      • Propósito geral: Projetado para uma ampla gama de aplicações, fornecendo um equilíbrio de recursos de computação, memória e E/S.
      • Business Critical: Oferece o mais alto desempenho para bancos de dados, com CPUs mais potentes e E/S mais rápidas, adequadas para cargas de trabalho de alta transação e baixa latência.
    • Alocação de memória e CPU: Dependendo da camada selecionada, você pode dimensionar o número de vCores e a quantidade de RAM disponível para seu banco de dados, o que afeta diretamente a capacidade de lidar com consultas maiores ou mais complexas e permite um maior número de conexões simultâneas.
  2. Dimensionamento horizontal
    • O Banco de Dados do Azure para MySQL pode ser dimensionado horizontalmente adicionando réplicas de leitura para distribuir o tráfego de leitura em vários servidores, melhorando o desempenho de leitura enquanto mantém o servidor primário disponível para gravações. O dimensionamento horizontal permite que seu banco de dados lide com mais carga de consulta, aumentando a capacidade de resposta do aplicativo.
  3. Dimensionamento de armazenamento
    • Dimensionamento dinâmico de armazenamento: com o Banco de Dados do Azure para MySQL, você pode aumentar a capacidade de armazenamento sem tempo de inatividade. Você pode começar com uma alocação menor e aumentar a escala à medida que seus dados crescem.
    • Funcionalidade de crescimento automático: esta funcionalidade aumenta automaticamente o tamanho do armazenamento antes de atingir o limite de capacidade, evitando assim quaisquer interrupções relacionadas com restrições de armazenamento.

IOPS de dimensionamento automático

O dimensionamento automático de IOPS (operações de entrada/saída por segundo) é um recurso que ajusta dinamicamente a taxa de transferência de E/S com base na carga de trabalho atual. Isso é particularmente útil para padrões de carga de trabalho imprevisíveis ou propensos a picos, pois garante que o banco de dados possa lidar com aumentos repentinos de carga sem intervenção manual.

  • Dimensionamento de IOPS com base na carga: quando a carga de trabalho aumenta e mais taxa de transferência de E/S é necessária, o recurso Autoscale aumenta automaticamente o limite de IOPS até o máximo permitido na camada de computação escolhida. Por outro lado, as IOPS são reduzidas durante períodos de baixa atividade para minimizar os custos.
  • Custo-benefício: ao ajustar automaticamente as IOPS com base no uso real, você paga apenas pelas IOPS usadas, em vez de provisionar recursos em excesso para lidar com picos de carga, o que pode ocorrer apenas esporadicamente.

Melhores práticas de dimensionamento

Para dimensionar efetivamente o Banco de Dados do Azure para MySQL, monitore as métricas de desempenho usando o Azure Monitor, configure alertas críticos, planeje o crescimento futuro revisando padrões de uso e teste a escalabilidade fora do horário de pico para garantir um desempenho suave sob maior carga.

Ao entender e usar esses mecanismos de dimensionamento, você pode garantir que seu servidor flexível do Banco de Dados do Azure para MySQL sempre seja executado de forma eficiente, adaptando-se às necessidades atuais e futuras de sua empresa.

Configurar e ajustar o comportamento do mecanismo

Para configurar e personalizar facilmente variáveis e parâmetros de servidor no Banco de Dados do Azure para MySQL, você pode usar o portal do Azure, a CLI do Azure ou a API REST para ajustar configurações como tamanho do cache de consulta, tempos limite de conexão e preferências do mecanismo de armazenamento, garantindo desempenho e comportamento ideais para sua carga de trabalho específica.

Em seguida, considere se o Banco de Dados do Azure para MySQL atende às necessidades de sua organização, seus aplicativos e cargas de trabalho de banco de dados.