MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Maneira mais rápida de excluir mais de 100 milhões de documentos por ID


Como não podemos arcar com o tempo de inatividade do usuário e a solução deve ser executada diariamente (embora em uma escala muito menor, pois estamos alcançando essa primeira execução), não pude usar a solução de Salvador Dali. Acabei agrupando meus registros a serem excluídos em grupos de 1k e enviando um comando BulkWrite contendo um delete() operação para cada registro. Em paralelo enviei n comandos BulkWrite para anular referências a cada registro, onde n é o número de coleções que referenciam os registros e onde cada solicitação BulkWrite tem 1k individual update() operações, semelhantes ao delete() . Isso funcionou razoavelmente rápido, então não tentei otimizar ainda mais ajustando o número de operações nos comandos BulkWrite.