Por que o espaço disponível em disco não aumenta depois que os dados são excluídos?
Operações como gravar, atualize e excluir (incluindo inserir e excluir índice) são, na verdade, convertidas para gravar operações em segundo plano. Quando os dados de uma instância em uso são excluídos, o espaço em disco não é recuperado. Esse espaço em disco não recuperado é chamado de fragmentos de disco. Quando novos dados são inseridos, esses fragmentos são reutilizados sem solicitar novo espaço em disco. Os diferentes mecanismos de armazenamento subjacentes (RocksDB e WiredTiger) variam de acordo com cenários específicos.
Depois de excluir os dados, o RocksDB converte diretamente a operação delete para adicionar gravação. Depois que uma certa quantidade de dados redundantes é acumulada, o thread compacto em segundo plano é automaticamente acionado para mesclar e agregar dados de várias versões para liberar espaço em disco redundante. É aconselhável aguardar que o sistema recupere automaticamente o espaço em disco. Se o uso do espaço em disco for alto e próximo do limite somente leitura, entre em contato com o suporte técnico da Huawei.
Depois de excluir dados, o WiredTiger mescla e agrega dados de várias versões, causando fragmentos de espaço em disco. No entanto, o WiredTiger não retorna o espaço em disco para o sistema operacional. WiredTiger marca o espaço em disco para gravações subsequentes da coleção atual, o espaço em disco reservado é usado preferencialmente para gravações subsequentes da coleção. Para liberar o espaço em disco, execute o comando compact. (Observação: este comando bloqueia serviços normais e é desabilitado por padrão.)