
Hay mucho que decir sobre la ejecución de una base de datos MongoDB en la nube. Puedes tener clústeres de servidores en línea, rápidamente, y toda la red está gestionada y es segura. Todos tus usuarios pueden conectarse a ella y tendrá copias de seguridad automatizadas. Un servicio como Atlas es genial para este tipo de cosas. Pero hay ocasiones en las que puedes querer instalar tu propio MongoDB local y algunas buenas razones para hacerlo. Aquí tienes cinco de ellas:
1: Gratis sin límites
Muchas bases de datos en la nube ofrecen un nivel gratuito. La capa gratuita suele tener algunos límites. Por ejemplo, la capa gratuita M0 de MongoDB Atlas, donde las limitaciones comienzan con una capacidad máxima de almacenamiento de 512 MB e incluyen una serie de restricciones porque la base de datos está en una plataforma compartida. Si instalas tu propio MongoDB localmente, tus únicos límites son cuánto espacio en disco y RAM puedes disponer para ejecutar tu base de datos.
2: No es necesario estar en línea
Puede parecer obvio, pero una base de datos en la nube significa que tienes que estar conectado a Internet para conectarte a ella. Si viajas o trabajas en un lugar con conectividad limitada, esto puede ser un problema. Peor aún es si esa conectividad es de pago y la tarifa es alta. Cada consulta y cada resultado te costarán dinero.
3: Retraso cero
Cuando se trabaja con una base de datos en la nube, la latencia de Internet también entra en juego, lo que se traduce en milisegundos adicionales en todas y cada una de las consultas que se realizan desde una aplicación. Aunque es difícil detectar ese retraso en una aplicación GUI dirigida por el usuario como Studio 3T, ese retraso siempre estará ahí (a menos que consigan que 5G funcione como han estado prometiendo... no, no contengas la respiración).
4: Tan rápido como tu máquina local
Ejecutar la base de datos localmente significa que toda la potencia de la CPU local está disponible para las tareas más intensivas en computación. Las bases de datos compartidas en la nube tienen, por diseño, que ser buenas vecinas de otras bases de datos que se ejecutan en los mismos hosts. Así que habrá límites razonables. Eso o verás que de vez en cuando el rendimiento decae cuando alguien está ejecutando una tarea de cálculo intensivo. Cuando se ejecuta localmente sólo compites tú por los recursos.
5: Replicación libre
A menos que uses algo como Docker y te configures un minicluster localmente, tu MongoDB local será una única instancia de MongoDB. Eso significa que no tendrá que replicar datos a otra instancia de MongoDB para que esté altamente disponible. Y eso a su vez significa más recursos libres para que los consumas con tus aplicaciones.
Entonces, ¿para quién es bueno este MongoDB local?
- Cualquier persona que realice tareas de desarrollo y no necesite conectarse a los sistemas de producción.Studio 3T también puede ayudarles a obtener datos de prueba reales mediante el uso de Data Masking).
- Cualquiera que desee obtener datos que normalmente son críticos para la producción sin afectar al proceso de producción. Studio 3T puede ayudar a exportar esos datos a la base de datos local utilizando sus funciones de exportación)
- o que necesita una base de datos pero está lejos de Internet
- y también a todos los que necesiten una base de datos local gratuita y eficaz
Pero... el caso contra MongoDB local
Por supuesto, esto tiene sus salvedades.
- Producción - MongoDB siempre va a ser un cluster de tres máquinas o más ejecutando MongoDB. Ejecutar un MongoDB local independiente es genial para el rendimiento, pero eso es todo.
- Replicación, latencia y otras personas: si estás desarrollando en un MongoDB independiente, no esperes el mismo rendimiento cuando traslades tu aplicación para ejecutarla en la nube. El clúster de producción estará haciendo replicación, será remoto y habrá latencia, y si vas a producción en una plataforma compartida, habrá otras personas compitiendo por los recursos. No es una razón para no construir localmente, es más una razón para asegurarte de que haces pruebas en la nube para asegurarte de que no has apretado demasiado el botón del rendimiento.
- Sin copias de seguridad - A menos que seas muy organizado y hagas copias de seguridad de tu portátil o de tu ordenador de sobremesa, lo más probable es que no haya ninguna copia de seguridad de tu base de datos. Si accidentalmente corrompes o borras tus datos, tendrás que volver a crearlos.
- No dispone de funciones como el cifrado en reposo y otras opciones empresariales: suponiendo que elija la edición Community de MongoDB, no podrá utilizar las distintas funciones empresariales, aunque, dicho esto, la mayoría de ellas son funciones operativas/de implantación para grandes despliegues.
- Seguridad - eres responsable de ella en tu máquina local. Cuando instalas MongoDB ahora, sólo se enlaza a localhost, pero ¡cuidado! Si te enlazas a una dirección IP para dar a otros acceso a tu MongoDB, has abierto una lata de gusanos - necesitarás asegurarte de que tienes usuarios y autenticación configurados para gestionar las conexiones entrantes.
Por último
Una vez que te hayas decidido por el local, en los siguientes artículos encontrarás todos los detalles para ponerlo en marcha:
- Cómo instalar un MongoDB local en macOS y conectarse a Studio 3T
- Windows 11: Cómo instalar MongoDB con Studio 3T
Entonces estarás listo para importar datos y empezar a consultar, agregar y sacar más partido a MongoDB con Studio 3T.
Este artículo fue escrito originalmente por Dj Walker-Morgan y publicado en el blog de Studio 3T.