Alterar o número máximo de documentos em uma coleção limitada
Novidades na versão 6.0.
Para alterar o número máximo de documentos em uma collection limitada, use a opção collMod
do comando cappedMax
.
Se
cappedMax
for menor ou igual a0
, não há limite máximo de documentos.Se
cappedMax
for menor que o número atual de documentos na coleção, o MongoDB removerá o excesso de documentos na próxima operação de inserção.
Sobre esta tarefa
Geralmente, os índices TTL (Time To Live) oferecem melhor desempenho e mais flexibilidade do que as capped collections. Os índices TTL expiram e removem dados de collections normais com base no valor de um campo digitado por data e um valor TTL para o índice.
As coleções limitadas serializam as operações de gravação e, portanto, têm pior desempenho simultâneo de inserção, atualização e exclusão do que as coleções não limitadas. Antes de criar uma coleção limitada, avalie se não é possível usar um índice TTL.
Antes de começar
Crie uma coleção limitada chamada log
que possa armazenar no máximo 20.000 documentos:
db.createCollection( "log", { capped: true, size: 5242880, max: 20000 } )
Passos
Execute o seguinte comando para definir o número máximo de documentos na coleção log
como 5,000:
db.runCommand( { collMod: "log", cappedMax: 5000 } )