MongoDb Colecciones Circulares

Hoy vamos a cubrir un concepto interesante, las capped collection, también conocidas como colecciones circulares. Éstas nos pueden servir para cubrir algunos escenarios interesantes como colecciones con datos antiguos o si queremos operaciones rápidas sobre tamaños fijos de datos

MongoDb Colecciones Circulares

Hoy vamos a cubrir un concepto interesante, las capped collection, también conocidas como colecciones circulares.

Lo primero vamos a definir un par de escenarios interesantes:

  • Hay ocasiones en las que tenemos tablas "monstruo", que no paran de crecer y que tienen datos que cuanto más antiguos, menos relevancia tienen, en casos como estos, si no controlas a tu bestia puede llegar a degradar el rendimiento de tu sistema e incluso reventarte un servidor.

  • Otro escenario interesante es si quieres tener el top 100 de novedades que te han entrado de un tipo de producto y lo quieres leer de una forma muy rápida.

Lo normal en el primer caso es tener demonios o triggers que vayan haciendo trabajo de limpieza, o en el segundo ir trabajando con índices.

MongoDb nos da una alternativa interesante ¿Y si te creo una tabla que tiene un tamaño fijo, sea en bytes, o en número de documentos? Es decir:

  • Creo una tabla con hueco para 20 documentos.
  • Voy insertando documentos, mientras haya huecos todo va sobre ruedas.
  • Cuando ya tengo los casilleros para los 20 documentos ocupados, y voy a insertar uno nuevo ¿qué ocurre? Que me voy al casillero con el documento más antiguo y lo machaco con el nuevo que voy a insertar.

Temario

MongoDb Colecciones Circulares

Veamos cómo funcionan las capped collections con un caso práctico.

Ver lección

¿Con ganas de aprender Backend?

En Lemoncode impartimos un Bootcamp Backend Online, centrado en stack node y stack .net, en él encontrarás todos los recursos necesarios: clases de los mejores profesionales del sector, tutorías en cuanto las necesites y ejercicios para desarrollar lo aprendido en los distintos módulos. Si quieres saber más puedes pinchar aquí para más información sobre este Bootcamp Backend.