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 capped collection, 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 inserções e, portanto, têm um desempenho de inserção simultâneo pior do que as coleções sem limite. 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 } )