MongoDB
MongoDB es una base de datos que guarda cada registro como su propio documento flexible, así que dos productos pueden llevar detalles muy distintos sin caber en el mismo molde.
También conocido como base de datos NoSQL base de datos documental Mongo
Definición
MongoDB es un sitio donde guardar tus datos, y lo que lo diferencia es la forma. La mayoría de las bases funcionan como una hoja de cálculo, donde cada fila tiene las mismas columnas y todas hay que rellenarlas. MongoDB, en cambio, guarda cada registro por su cuenta, en un bloque pequeño llamado documento que lleva solo los campos necesarios.
Un catálogo de productos explica por qué eso importa, porque un zapato tiene talla y color mientras que un portátil tiene procesador y tamaño de pantalla. Una bolsa de café no comparte ninguno de los dos, ya que lo suyo es la fecha de tueste. Mete los tres en una sola tabla y tendrás decenas de columnas vacías para casi todos los productos, que es justo el lío que MongoDB evita. Allí el zapato guarda cosas de zapato y el portátil guarda cosas de portátil.
Esa libertad tiene un precio, y es la parte de la que nadie te avisa. Nada impide que dos registros se contradigan, así que un producto puede guardar su precio como el número 100 mientras el siguiente lo guarda como el texto "100". Los dos entran sin una queja. Luego alguien ordena el catálogo por precio y la lista sale mal, porque el texto se compara letra a letra y "100" cae antes que "9". Las reglas no desaparecieron. Solo se mudaron al programa que escribe tu equipo, que es más trabajo en vez de menos. Por eso Linkysoft acuerda esas reglas el primer día de un proyecto de aplicación web, porque arreglar un millón de registros viejos después es una mala semana.
Así que MongoDB encaja cuando los registros son de verdad distintos, como catálogos, respuestas de formularios, registros de actividad y cualquier cosa cuya forma cambia con el negocio. Encaja mal donde los datos están ordenados y las cuentas deben ser exactas, y una base de tablas de siempre es más segura para facturas y pagos. Muchos sistemas usan por eso las dos. Un sistema de tienda como Storek lleva el catálogo que cambia de forma junto al dinero que nunca puede redondear mal.
Hazle una pregunta a cualquier proveedor antes de firmar, que es qué pasa cuando un campo cambia de significado el año que viene. Si responden que simplemente escribirán un campo nuevo, pregunta quién arregla los registros antiguos. Repite luego la pregunta para el móvil, porque una aplicación móvil que trabaja sin conexión guarda documentos en el teléfono durante días. Algunos de esos teléfonos siguen con la versión del año pasado, y por eso Linkysoft lo trata como una cuestión de diseño y no de base de datos. La respuesta suele marcar la diferencia entre un segundo año tranquilo y uno duro.
Preguntas sobre MongoDB
¿Es MongoDB mejor que MySQL?
¿MongoDB es gratis?
¿Puedo sacar mis datos de MongoDB más adelante?
¿MongoDB sigue necesitando copias de seguridad?
¿MongoDB es buena opción para un negocio pequeño?
¿Sigue sin ver cómo se aplica esto a su proyecto?
Cuéntenos qué está construyendo y le responderemos en lenguaje claro.