Todos sabemos lo divertido y eficiente que puede ser trabajar en un computador de Apple, diseñar prototipos de interfaces gráficas, hacer análisis de datos, desarrollar aplicaciones web o incluso tener servidores de bases de datos corriendo en nuestro propio equipo.
ºPero muchas veces Apple nos puede sorprender con sus actualizaciones de SO. Con la llegada de macOS Catalina, ya no podemos almacenar archivos o datos en el disco duro del ordenador, ya que ahora este es solo de lectura y no podemos escribir comandos en nuestro terminal que afecten directamente el directorio raíz (/). Es por esto que en este post aprenderemos a como instalar MongoDB en macOS Catalina.
Base de datos relacionales VS no relacionales
Las bases de datos son la piedra angular de todas las plataformas tecnológicas. Las bases de datos relacionales son las que conocemos de siempre (SQL) y las bases de datos no relacionales (noSQL) son una tecnología relativamente nueva que tomó por sorpresa el mundo de la tecnología y llegó para quedarse. Algunas de las ventajas de las bases de datos no relacionales frente a las relacionales son:
No hay redundancia
Son mucho más livianas
Son mucho más veloces.
Para las bases de datos relacionales usamos SQL (Structured Query Language), que es un lenguaje de consultas para obtener la información que necesitamos de la base de datos. Es un lenguaje sencillo de aprender, que se siente como programar, sin embargo no es programación. Para las bases de datos no relacionales, utilizamos JavaScript el lenguaje de programación más popular en la actualidad, y los datos se estructuran en JSON, que no es un lenguaje para hacer una búsqueda. Es únicamente una forma de estructurar los datos para que cualquier programa los pueda entender.
Ejemplos de bases de datos:
Bases de datos
Relacionales (SQL)
No relacionales (NoSQL)
MySQL
PostgreSQL
Oracle
MongoDB
Redis
CouchDB
¿Qué es MongoDB?
MongoDB es una base de datos que pertenece a un grupo de bases de datos NoSQL, o no relacionales. En MongoDB, cada registro se almacena en un documento JSON (JavaScript Object Notation), estos documentos están compuestos por campos, estos se agrupan en colecciones.
¿Para qué usamos MongoDB?
MongoDB se puede utilizar en muchos de nuestros proyectos. Cualquier aplicación o plataforma que requiera almacenar datos semi estructurados. MongoDB es muy útil cuando buscamos escalabilidad en nuestros proyectos ya que nos permitirá un crecimiento horizontal sin problemas.
¿Por qué usar MongoDB?
A continuación te compartimos un par de razones por las cuales deberías estar usando MongoDB en tus proyectos.
Modelamiento de datos
Si usas NodeJS como tu backend, es muy probable que estés usando una arquitectura MEAN (Mongo Express Angular Node.js) o MERN (Mongo Express React Node.js). Y si no estás usando JavaScript para tus proyectos ¡No te preocupes! Con los drivers adecuados,puedes usar MongoDB para prácticamente cualquier lenguaje de programación.
Escalabilidad
Si esperas que tu proyecto nunca deje de crecer, MongoDB es la base de datos perfecta para ti, ya que te permitirá crecer no solamente de forma vertical si no que también de forma horizontal.
Consultas
MongoDB nos permite crear consultas poderosas con poco código, lo cual nos ahorrará muchísimo tiempo y nos hará más eficientes a la hora de analizar las métricas de nuestros proyectos.
Es Open Source (código abierto)
Esto es probablemente la mayor ventaja de MongoDB, ya que no tienes que pagar licencias para usarlo dentro de tu proyecto.
Cómo instalar MongoDB en Catalina OS
Prerrequisitos:
Instalar macOS Catalina
Estar familiarizado con la terminal de comandos de tu Mac
1. Descarga los archivos de instalación de MongoDB:
MongoDB recomienda que usemos la versión más completa de MongoDB Server, así que descargamos la versión MongoDB Enterprise. Descarga el archivo para macOS en formato TGZ.
2. Extrae los archivos:
$tar -xvzf [name-of-the-file.tgz]
3. Copia todos los archivos dentro de la carpeta bin en la raíz:
$ cd [name-of-the-folder]/bin
$ sudo bash
$ cp * /usr/local/bin
$ exit
4. Crea la carpeta para la base de datos:
$ sudo bash
$ mkdir -p ~/data/db
$ chmod 777 ~/data
$ chmod 777 ~/data/db
$ exit
5 . Crea el archivo de configuración para MongoDB:
$ touch /usr/local/etc/mongod.conf
6. Modifica el path de la base de datos:
Escribe lo siguiente dentro del archivo que acabamos de crear:
storage: dbPath: /Users/[youruser]/data/db
7. Crea un alias para sobreescribir la configuración que usa por default MongoDB:
Tendremos que modificar nuestro archivo .zshrc, agregando lo siguiente:
alias mongod='mongod -f /usr/local/etc/mongod.conf'
Listo, ahora podemos correr el comando mongod en nuestro terminal y utilizar MongoDB de manera normal.
Las bases de datos forman una pequeña pero muy importante parte del mundo de la programación. Si ya sabes programar o apenas estás aprendiendo y quieres llevar tus habilidades al siguiente nivel, entonces puedes optar por el Bootcamp de programación, donde aprenderás el manejo de base de datos no relacionales y muchas otras herramientas que te harán un full stack developer.
Feliz Código ❤️