O Parse tem um problema exclusivo: eles não sabem como as pessoas estão usando os MongoDBs que fornecem. A maioria das pessoas que confiam no Parse como um caso de uso para gerenciar seu MongoDB lerá principalmente sobre como o Parse tenta corrigir o mau uso de seus clientes.
Dito isto, você não deve estar sempre compactando. De fato, se você está tendo que compactar regularmente, isso significa que você está usando o MongoDB de forma ineficiente. As razões pelas quais seu MongoDB pode se tornar "desfragmentado" são:
- Excluir regularmente documentos
- Atualizando documentos e tornando o documento maior continuamente (não inclui atualizações atômicas)
Se você está excluindo documentos regularmente, deve considerar o uso de coleções limitadas ou TTL.
Se você estiver atualizando documentos e tornando o documento maior (ou seja, estendendo continuamente um array), então você deve pensar em redesenhar o esquema para limitar o crescimento ilimitado do documento. Ou, você pode considerar adicionar preenchimento como espaços reservados para futuras atualizações.
De qualquer maneira, se você tem que compactar regularmente e com frequência, é um sintoma de não usar o MongoDB corretamente, e você deve pensar em redesenhar seu esquema. As compactações são comandos de bloqueio e em datasizes maiores que alguns shows podem demorar um pouco para serem concluídos.