Este tópico responde a perguntas comuns sobre a capacidade de armazenamento de instâncias do RDS.
Expansão de armazenamento: processo e impactos
É possível aumentar a capacidade de armazenamento diretamente. Se o host atual não tiver armazenamento suficiente, o sistema provisiona automaticamente um novo par de instâncias primária e secundária em um host com armazenamento adequado e sincroniza os dados da instância original.
Para obter mais informações sobre como aumentar a capacidade de armazenamento e verificar se o processo causa uma interrupção temporária de conexão, consulte os seguintes tópicos:
Como é faturada a expansão de armazenamento?
O faturamento sofre alterações após a expansão da capacidade de armazenamento de uma instância do RDS. Para obter mais informações, consulte Billing rules for configuration changes.
Solução de problemas para aumentos repentinos de armazenamento
Recomendamos que acesse a página Instances. Na barra de navegação superior, selecione uma região e clique em ID da instância do RDS de destino.
No painel de navegação à esquerda, clique em Monitoring and Alerts. Na página exibida, visualize o gráfico de linhas disk space. Esse gráfico exibe o uso total de espaço em disco e o divide em data space usage, log space usage, temporary file space usage e system file space usage. Use essas informações para identificar qual categoria está causando o aumento repentino.
Como liberar espaço
Para obter mais informações, consulte os seguintes tópicos:
Por que bancos de dados vazios consomem espaço
Inicializar um banco de dados cria tabelas do sistema para armazenar informações como contas, permissões e outros metadados. Além disso, os logs do sistema de banco de dados, como logs de redo e undo, também ocupam espaço em disco.
Uso de espaço de dados importados para o MySQL
Diferentes mecanismos de armazenamento de bancos de dados lidam com dados de formas distintas. Fatores como suporte a compactação e a indexação de campos podem afetar o espaço de armazenamento utilizado.
A capacidade de armazenamento inclui o armazenamento de backup?
Não. O valor de Storage Capacity na seção Usage Statistics da página Basic Information de uma instância do RDS no console indica apenas a capacidade de armazenamento da instância e não inclui o armazenamento de backup. Para visualizar o uso do seu armazenamento de backup, consulte Backup size.
Como lidar com o bloqueio de instâncias por armazenamento cheio
Quando o armazenamento de uma instância do RDS se esgota, a instância é bloqueada automaticamente. A mudança de status pode apresentar atraso devido à latência de inspeção do sistema.
Quando uma instância do RDS é bloqueada, não é possível gravar dados nela. Recomendamos que você configure alerts para evitar que sua instância seja bloqueada por falta de armazenamento. Também ative a expansão automática de armazenamento. Se o armazenamento for insuficiente, a instância expandirá sua capacidade automaticamente. Para obter mais informações, consulte os seguintes tópicos:
-
Para uma instância do ApsaraDB RDS for MySQL, consulte Configure automatic storage expansion.
Para instâncias do ApsaraDB RDS for MySQL, ative também a automatic fragment reclamation para limpar fragmentos e recuperar espaço de armazenamento.
Para uma instância do ApsaraDB RDS for PostgreSQL, consulte Configure automatic storage expansion.
Para uma instância do ApsaraDB RDS for SQL Server, consulte Configure automatic storage expansion.
Solução:
Caso sua instância seja bloqueada, consulte What to do if the storage of an instance is full para obter soluções.
Por que o SQL Server não recupera espaço
Execute uma operação DELETE e exclua uma grande quantidade de dados de uma instância do ApsaraDB RDS for SQL Server. Nesse caso, o espaço em disco não é liberado imediatamente. Esse comportamento se deve ao design e aos mecanismos de log do sistema de gerenciamento de banco de dados:
Registro de log de transações: Para garantir a consistência e a recuperabilidade dos dados, o SQL Server registra cada operação de dados, incluindo
DELETE, no log de transações. Isso significa que, mesmo após os dados serem marcados para exclusão, as entradas de log correspondentes ainda ocupam espaço em disco, o que pode aumentar o uso do disco em vez de reduzi-lo.Páginas de dados não liberadas: No SQL Server, os dados são armazenados em páginas de dados. Ao excluir dados, o sistema marca essas páginas como reutilizáveis em vez de liberá-las imediatamente. Esse design melhora a eficiência de inserções subsequentes, evitando reorganizações físicas frequentes no disco. Portanto, embora os dados sejam excluídos logicamente, o espaço físico não é devolvido imediatamente ao sistema operacional.
Fragmentação de tabelas e índices: Excluir dados pode deixar lacunas vazias em tabelas e índices, fragmentando o espaço de armazenamento. No entanto, o banco de dados ainda considera esse espaço como alocado.
Para liberar esse espaço, recomendamos as seguintes ações:
-
Reduza o banco de dados ou grupos de arquivos: Use o comando
DBCC SHRINKDATABASEouDBCC SHRINKFILEpara liberar espaço não utilizado e reduzir o tamanho dos arquivos de dados.ImportanteEste processo pode ser demorado, e operações de redução frequentes podem afetar negativamente o desempenho. Para obter mais informações, consulte Resolve the automatic locking of an ApsaraDB RDS for SQL Server instance caused by full storage ou Insufficient storage space on an ApsaraDB RDS for SQL Server instance.
Reconstrua índices: Após a exclusão de uma grande quantidade de dados, os índices podem ficar fragmentados. A reconstrução de um índice ajuda a reorganizar as páginas de dados, liberar espaço e melhorar o desempenho das consultas.
Faça o backup do log de transações: Para bancos de dados que usam o modelo de recuperação completa, fazer o backup do log de transações regularmente trunca o log e libera espaço de log. Para obter mais informações, consulte Gerencie logs.
-
Considere usar TRUNCATE TABLE: Em cenários apropriados, o comando
TRUNCATE TABLEé mais eficiente que oDELETE. Ele libera páginas de dados diretamente sem gerar um grande número de registros de log, o que torna o processo mais rápido.ImportanteA operação
TRUNCATEé irreversível e não oferece suporte à cláusulaWHERE.
Em resumo, para reduzir efetivamente o uso de espaço em disco, talvez seja necessário combinar essas ações para otimizar o armazenamento do seu banco de dados.
A cota de backup aumenta com a expansão de armazenamento?
Sim, a cota de backup gratuito para uma instância do RDS depende da sua capacidade de armazenamento. Ao aumentar a capacidade de armazenamento da instância, sua cota de backup gratuito também aumenta. Para instâncias que usam cloud disks, a cota de backup gratuito é de 200% da sua capacidade de armazenamento. Para instâncias que usam Premium Local SSDs, a cota de backup gratuito é de 50% da sua capacidade de armazenamento. A cota gratuita é medida em gigabytes (GB) e é sempre arredondada para cima, para o número inteiro mais próximo.