Docs Menu
Docs Home
/ /
/ / /

Convertir una colección a limitada

Para convertir una colección sin límite en una colección limitada, utilice el convertToCapped comando de base de datos.

El comando convertToCapped mantiene un bloqueo exclusivo de la base de datos mientras dura la operación. Otras operaciones que bloquean la misma base de datos se bloquean hasta que se complete la operación convertToCapped.

En general, los índices TTL (Time To Live) ofrecen un mejor rendimiento y más flexibilidad que las colecciones con tamaño fijo. Los índices TTL caducan y remueven datos de las colecciones normales según el valor de un campo de tipo fecha y un valor TTL para el índice.

Las colecciones con tamaño fijo serializan las operaciones de guardado y, por lo tanto, tienen un rendimiento peor en la inserción, actualización y eliminación concurrentes que las colecciones sin tamaño fijo. Antes de crear una colección con tamaño fijo, considera si puedes usar un índice TTL en su lugar.

Crea una colección sin límite llamada log2:

db.createCollection("log2")
1

Para convertir la colección log2 en una colección con tamaño fijo, ejecutar el comando convertToCapped:

db.runCommand( {
convertToCapped: "log2",
size: 100000
} )

La colección log2 tiene un tamaño máximo de 100,000 bytes.

2

Para confirmar que la log2 colección ahora está limitada, utilice el isCapped() método:

db.log2.isCapped()
true

Volver

Verifique

En esta página