Converter uma coleta em limitada
Nesta página
Para converter uma coleção sem limite em uma coleçãolimitada , use o comando de banco de dados convertToCapped
.
O comando convertToCapped
mantém um bloqueio exclusivo do banco de dados durante a operação. Outras operações que bloqueiam o mesmo banco de dados são bloqueadas até que a operação convertToCapped
seja concluída.
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 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 sem limite. Antes de criar uma capped collection, confira se você pode usar um índice TTL.
Antes de começar
Crie uma coleção não limitada chamada log2
:
db.createCollection("log2")
Passos
Converta a coleção em uma coleção limitada
Para converter a coleção log2
em uma coleção limitada, execute o comando convertToCapped
:
db.runCommand( { convertToCapped: "log2", size: 100000 } )
A coleção log2
tem um tamanho máximo de 100.000 bytes.
Confirme que a coleção é limitada
Para confirmar se a coleção log2
agora está limitada, use o método isCapped()
:
db.log2.isCapped()
true