IOPS de armazenamento no Banco de Dados do Azure para MySQL - Servidor flexível

APLICA-SE A: Banco de Dados do Azure para MySQL - Servidor Flexível

IOPS de armazenamento (operações de E/S por segundo) referem-se ao número de operações de leitura e gravação que podem ser executadas pelo sistema de armazenamento por segundo. Valores de IOPS mais altos indicam melhor desempenho de armazenamento, permitindo que seu banco de dados lide com mais operações simultâneas de leitura e gravação, resultando em recuperação de dados mais rápida e maior eficiência geral. Quando a configuração IOPS é definida muito baixa, o servidor de banco de dados pode enfrentar atrasos no processamento de solicitações, resultando em desempenho lento e taxa de transferência reduzida. Por outro lado, se a configuração IOPS for definida como muito alta, isso pode levar a uma alocação desnecessária de recursos e potencialmente a custos aumentados sem melhorias significativas de desempenho.

O banco de dados do Azure para servidor flexível MySQL atualmente oferece duas configurações para gerenciamento de IOPS, IOPS pré-provisionadas e IOPS de dimensionamento automático.

IOPS pré-provisionadas

O servidor flexível do Banco de Dados do Azure para MySQL oferece IOPS pré-provisionadas, permitindo que você aloque um número específico de IOPS para sua instância de servidor flexível do Banco de Dados do Azure para MySQL. Essa configuração garante um desempenho consistente e previsível para suas cargas de trabalho. Com IOPS pré-provisionadas, você pode definir um limite de IOPS específico para seu volume de armazenamento, garantindo a capacidade de lidar com um determinado número de solicitações por segundo. Isso resulta em um nível confiável e garantido de desempenho.

Além disso, IOPS adicionais com IOPS pré-provisionadas refere-se à flexibilidade de aumentar as IOPS provisionadas para o volume de armazenamento associado ao servidor. Você tem a opção de adicionar IOPS extras além do nível provisionado padrão, permitindo que você personalize o desempenho alinhando-se com seus requisitos de carga de trabalho a qualquer momento.

IOPS de dimensionamento automático

O dimensionamento automático de IOPS oferece a flexibilidade de dimensionar IOPS sob demanda, eliminando a necessidade de pré-provisionar uma quantidade específica de IO por segundo. Ao habilitar o Autoscale IOPS, seu servidor ajustará automaticamente o IOPS com base nos requisitos de carga de trabalho. Com as IOPS de dimensionamento automático habilitadas, agora você pode aproveitar o gerenciamento de E/S sem preocupações no Banco de Dados do Azure para servidor flexível MySQL, porque o servidor dimensiona IOPs automaticamente para cima ou para baixo, dependendo das necessidades de carga de trabalho.

Dimensionamento dinâmico: o dimensionamento automático de IOPS ajusta dinamicamente o limite de IOPS do servidor de banco de dados com base na demanda real da carga de trabalho. Isso garante um desempenho ideal sem intervenção ou configuração manual.

Lidando com picos de carga de trabalho: IOPS de dimensionamento automático permitem que seu banco de dados lide perfeitamente com picos ou flutuações de carga de trabalho sem comprometer o desempenho de seus aplicativos. Este recurso garante uma resposta consistente, mesmo durante os períodos de pico de uso.

Economia de custos: Ao contrário das IOPS pré-provisionadas, em que um limite de IOPS fixo é especificado e pago independentemente do uso, as IOPS de dimensionamento automático permitem que você pague apenas pelo número de operações de E/S que você consome. Com esse recurso, você será cobrado apenas pela E/S que seu servidor realmente utiliza, evitando provisionamento desnecessário e despesas com recursos subutilizados. Isso garante economia de custos e desempenho ideal, tornando-se uma escolha inteligente para gerenciar sua carga de trabalho de banco de dados de forma eficiente.

Monitorar o desempenho do armazenamento

O monitoramento da utilização de IOPS de armazenamento é fácil com as métricas disponíveis em Monitoramento .

Descrição geral

Para obter uma visão abrangente da utilização de E/S para o período de tempo selecionado. Navegue até o Monitoramento no portal do Azure para o Banco de Dados do Azure para Servidor Flexível MySQL na folha Visão geral.

Screenshot of overview metrics.

Pasta de trabalho de métricas aprimoradas

  • Navegue até Pastas de trabalho na seção Monitoramento em seu portal do Azure.
  • Selecione a pasta de trabalho "Métricas aprimoradas".
  • Verifique se há métricas de porcentagem de E/S de armazenamento na seção Visão geral da pasta de trabalho.

Screenshot of enhanced metrics.

Métricas em Monitoramento

  • Navegue até Métricas, na seção Monitoramento no seu portal do Azure.
  • Selecione a opção "Adicionar métrica".
  • Escolha "Porcentagem de E/S de armazenamento" na lista suspensa de métricas disponíveis.
  • Escolha "Storage IO count" na lista suspensa de métricas disponíveis.

Screenshot of monitoring metrics.

Selecionando a configuração de IOPS ideal

Tendo aprendido a monitorar seu uso de IOPS de forma eficaz, agora você está equipado para explorar as melhores configurações para seu servidor. Ao escolher a configuração IOPS para sua instância de servidor flexível do Banco de Dados do Azure para MySQL, vários fatores importantes devem ser considerados. Compreender esses fatores pode ajudá-lo a tomar uma decisão informada para garantir o melhor desempenho e a melhor relação custo-benefício para sua carga de trabalho.

Otimização do Desempenho

Com o Autoscale IOPS, é possível atender a requisitos consistentes para a carga de trabalho, que é previsível sem enfrentar a desvantagem da limitação de armazenamento e da interação manual para adicionar mais IOPS. Se sua carga de trabalho tiver uma taxa de transferência consistente ou exigir IOPS consistentes, as IOPS pré-provisionadas podem ser preferíveis. Ele fornece um nível de desempenho previsível e a alocação fixa de IOPS se correlaciona com a carga de trabalho dentro dos limites especificados. Embora para qualquer requisito de taxa de transferência mais alta do que o requisito usual, IOPS adicionais podem ser alocados com IOPS pré-provisionadas, o que requer interação manual e compreensão do tempo de aumento da taxa de transferência.

Impacto de limitação

Considere o impacto da limitação na sua carga de trabalho. Se a potencial degradação do desempenho devido à limitação for uma preocupação, o Autoscale IOPS pode lidar dinamicamente com picos de carga de trabalho, minimizando o risco de limitação e mantendo o desempenho no nível ideal.

Em última análise, a decisão entre Autoscale e IOPS pré-provisionadas depende de seus requisitos específicos de carga de trabalho e expectativas de desempenho. Analise seus padrões de carga de trabalho, avalie as implicações de custo e considere o impacto potencial da limitação para fazer uma escolha informada que esteja alinhada com suas prioridades. Ao considerar as características específicas da carga de trabalho do banco de dados, como flutuações de tráfego, padrões de consulta e requisitos de desempenho, você pode tomar uma decisão informada sobre a escolha entre Dimensionamento automático e IOPS pré-provisionadas.

Considerações sobre a carga de trabalho IOPS pré-provisionadas IOPS de dimensionamento automático
Cargas de trabalho com padrões de E/S consistentes e previsíveis Recomendado, pois utiliza apenas IOPS provisionadas Compatível, sem necessidade de provisionamento manual de IOPS
Cargas de trabalho com padrões de uso variáveis Não recomendado, pois pode não fornecer um desempenho eficiente durante períodos de uso elevado. Recomendado, pois se ajusta automaticamente para lidar com cargas de trabalho variáveis
Cargas de trabalho com crescimento dinâmico ou necessidade de desempenho variável Não recomendado, pois requer ajustes constantes de acordo com a mudança do requisito de IOPS Recomendado, pois nenhuma configuração extra é necessária para requisitos específicos de taxa de transferência

Considerações de custos

Se você tiver uma carga de trabalho flutuante com picos imprevisíveis, optar por IOPS de dimensionamento automático pode ser mais econômico. Ele garante que você pague apenas pelas IOPS mais altas usadas durante os períodos de pico, oferecendo flexibilidade e economia de custos. IOPS pré-provisionadas, embora forneçam IOPS consistentes e máximas, podem ter um custo mais alto, dependendo da carga de trabalho. Considere o compromisso entre custo e desempenho exigido do seu servidor.

Testar e avaliar

Se não tiver certeza sobre a configuração ideal de IOPS, considere a execução de testes de desempenho usando IOPS de dimensionamento automático e IOPS pré-provisionadas. Avalie os resultados e determine qual configuração atende aos requisitos de carga de trabalho e às expectativas de desempenho.

Exemplos de cargas de trabalho: sites de comércio eletrônico

Se você possui um site de comércio eletrônico que experimenta flutuações no tráfego ao longo do ano. Durante períodos normais, a carga de trabalho é moderada, mas durante as épocas de férias ou promoções especiais, o tráfego aumenta exponencialmente.

IOPS de dimensionamento automático: com IOPS de dimensionamento automático, seu banco de dados pode ajustar dinamicamente suas IOPS para lidar com o aumento da carga de trabalho durante os períodos de pico. Quando o tráfego aumenta, como durante as vendas da Black Friday, o recurso de dimensionamento automático permite que seu banco de dados escale perfeitamente o IOPS para atender à demanda. Isso garante um desempenho suave e ininterrupto, evitando lentidão ou interrupções do serviço. Após o período de pico, quando o tráfego diminui, o IOPS diminui novamente, permitindo economia de custos, já que você paga apenas pelos recursos utilizados durante o surto.

IOPS pré-provisionadas: se você optar por IOPS pré-provisionadas, precisará estimar a capacidade máxima de carga de trabalho e alocar um número fixo de IOPS de acordo. No entanto, durante os períodos de pico, a carga de trabalho pode exceder o limite de IOPS predeterminado. Como resultado, a E/S de armazenamento pode ser limitada, afetando o desempenho e potencialmente causando atrasos ou tempos limite para seus usuários.

Exemplos de cargas de trabalho: Plataformas de relatórios/análise de dados

Suponha que você tenha o Servidor flexível do Banco de Dados do Azure para MySQL usado para análise de dados, onde os usuários enviam consultas complexas e tarefas de processamento de dados em grande escala. O padrão de carga de trabalho é relativamente consistente, com um fluxo constante de consultas ao longo do dia.

IOPS pré-provisionadas: com IOPS pré-provisionadas, você pode selecionar um número adequado de IOPS com base na carga de trabalho esperada. Desde que as IOPS escolhidas lidem adequadamente com o volume de consultas diárias, não há risco de limitação ou degradação do desempenho. Essa abordagem fornece previsibilidade de custos e permite otimizar recursos de forma eficiente sem a necessidade de dimensionamento dinâmico.

IOPS de dimensionamento automático: o recurso de dimensionamento automático pode não fornecer vantagens significativas neste caso. Como a carga de trabalho é consistente, o banco de dados pode ser provisionado com um número fixo de IOPS que atenda confortavelmente à demanda. O dimensionamento automático pode não ser necessário, pois não há picos repentinos de atividade que exijam IOPS adicionais. Usando IOPS pré-provisionadas, você tem um desempenho previsível sem a necessidade de dimensionamento, e o custo está diretamente ligado ao armazenamento alocado.

Perguntas Frequentes

Como passar de IOPS pré-provisionadas para IOPS de dimensionamento automático?

  • Acesse seu portal do Azure e localize o banco de dados do Azure relevante para o servidor flexível MySQL.
  • Vá para a folha Configurações e escolha a seção Computação + Armazenamento.
  • Na seção IOPS, opte por Auto Scale IOPS e salve as configurações para aplicar as modificações.

Em quanto tempo o Autoscale IOPS entra em vigor após fazer a alteração?

Depois de habilitar o Autoscale IOPS para o servidor flexível do Banco de Dados do Azure para MySQL e salvar as configurações, as alterações entrarão em vigor imediatamente após a implantação do recurso ter sido concluída com êxito. Isso significa que o recurso Autoscale IOPS será aplicado ao seu banco de dados sem qualquer atraso.

Como uma operação de restauração point-in-time (PITR) afeta o uso de IOPS?

Durante uma operação PITR no Banco de Dados do Azure para MySQL - Servidor Flexível, um novo servidor é criado e os dados são copiados do armazenamento do servidor de origem para o armazenamento do novo servidor. Esse processo resulta em um maior uso de IOPS no servidor de origem. Esse aumento no uso de IOPS é uma ocorrência normal e não indica nenhum problema com o servidor de origem ou a operação PITR. Quando a operação PITR estiver concluída, o uso de IOPS no servidor de origem retornará aos seus níveis usuais. Para obter mais informações sobre o PITR, consulte a seção Backup e Restauração na documentação do Banco de Dados do Azure para MySQL - Servidor Flexível.

Como saber quando as IOPS aumentaram e diminuíram quando o servidor está usando o recurso de IOPS de dimensionamento automático? Ou posso monitorar o uso de IOPS para o meu servidor?

Consulte a seção "Monitorar o desempenho do armazenamento", que ajudará a identificar se o servidor aumentou ou diminuiu durante uma janela de tempo específica.

Posso alternar entre IOPS de dimensionamento automático e IOPS pré-provisionadas mais tarde?

Sim, você pode voltar para IOPS pré-provisionadas optando por IOPS pré-provisionadas na seção Computação + Armazenamento na folha Configurações.

Como sei quanto IOPS foram utilizados para o Banco de Dados do Azure para o servidor flexível MySQL?

Navegando até Monitoramento na seção Visão geral ou navegue até Métricas de contagem de E/S na folha Monitoramento. A métrica de contagem de E/S fornece a soma das IOPS usadas pelo servidor no período selecionado.

Próximos passos