Estou usando o MongoDB 3.6, tenho um grande número de fragmentação em minhas coleções. 300+ GB em uma coleção. WiredTiger é o mecanismo de armazenamento.
Eu sei que é ruim para o sistema operacional e muito espaço desperdiçado. Isso afeta a memória também se usarmos o mecanismo MMAP. Mas não sei como a fragmentação afeta o WiredTiger?
Será menos eficiente buscar dados se você tiver muito espaço disponÃvel para reutilização. No entanto, esse espaço pode ser reutilizado se você continuar inserindo ou atualizando documentos na coleção.
Se você derrubou uma quantidade significativa de dados (o que soa como ~ 300 GB em uma de suas coleções), você pode recuperar espaço:
compact
comando (advertência importante: isso bloqueará todas as operações para o banco de dados em que a operação está sendo executada)Para qualquer abordagem, eu usaria a manutenção contÃnua para manter a disponibilidade.
Uma ressincronização seria a opção mais eficaz. A
compact
execução do comando é mais arriscada, pois um membro do conjunto de réplicas pode ficar obsoleto durante a execuçãocompact
offline (e exigir ressincronização); essa operação também pode não liberar tanto espaço em disco quanto uma ressincronização e precisa ser executada por coleção.