MongoDB (Parte I)

Hace vaaarios meses atrás leí por primera vez algo llamado NoSQL y quede con cara de pokerFace (😯 ) Empecé a buscar más sobre esto y llegué a MongoDB (entre otras BDs). Fue la que más me gustó (en parte por el logo😀 ) Y hace unos días atrás comencé a utilizarla… fue bastante simple, y me dio por dedicarle una entrada en el blog😉 No pienso explicar qué es NoSQL en sí (para eso tienen Wikipedia) Empezamos con la “instalación” descargando desde la aquí escogiendo lo que más nos sirva (en mi caso Linux x64). Luego de descomprimir, tenemos algo como esto:

Descomprimido

Y luego lo movemos a donde queramos (En mi caso ~/Documentos/.mondoDB) Los ejecutables principales son 2 mongo y mongod. El primero es la shell del sistema, y el segundo el servicio. MongoDB para guardar la información por defecto utiliza la carpeta /data/dB/Mongo no crea esta carpeta por si mismo, así que tenemos que crearla, cambiando los permisos necesarios de usuario.

sudo mkdir -p /data/db/
sudo chown *usuario* /data/db/ 

Y eso sería todo. Lo siguiente es iniciar el servidor (mongod) desde la terminal (antes deben cambiar los permisos necesarios para iniciarlo. Iniciamos todo por defecto(puerto, directorio) y tenemos algo como esto:

Salida servidor mongod

En otra pestaña (u otra ventana) iniciamos el shell de mongo y estamos listos para ingresar información o jugar.

Salida shell mongo

Los comandos para ingresar información siguen el orden: db.colleción.comando. Por defecto, se empieza con la base de datos test (que vendría a ser db en el comando). Mongo no utiliza tablas, aquí se llaman colecciones y son como clases (haciendo una comparación). No tienen límite de nada y pueden contener datos de cualquier tipo (cadenas, números, arreglos, arreglos de arreglos, etc.) Además, toda la información se ingresa en formato JSON, que de por sí es más simple😀 Por ejemplo, al ejecutar

db.prueba.save({Funciona:"Si"})

estamos guardando en la colección “prueba” una nueva colección que tiene un campo llamado “Funciona” con un string “Si“. Si queremos ver cómo queda guardado en la bd, hacemos un

db.prueba.find()

y tenemos { "_id" : ObjectId("4e61581801afbc0b635c0f9f"), "Funciona" : "Si" }Si ingresáramos otros registros pueden ser distintos al anterior, por eso es importante normalizarlos antes de ingresar. Por ejemplo estos 2 nuevos que ingresé

> db.prueba.find()
{ "_id" : ObjectId("4e61581801afbc0b635c0f9f"), "Funciona" : "Si" }
{ "_id" : ObjectId("4e66c2ef474b137ab51144e8"), "Saludo" : "Holaaa desde DanLaHo" }
{ "_id" : ObjectId("4e66c316474b137ab51144e9"), "Saludo" : "Holaaa desde DanLaHo", "Despedida" : "Chaooo desde DAnLaHo" }

Todos se encuentran bajo la colección “prueba” pero son son de formas distintas.

Eso por hoy.
>[/sourcecode]

Acerca de MaritoCares

Ingeniero Informático. Con tendencias a la programación en [C#, VB].NET, Java(Web principalmente...), PHP, JavaScript, algo mínimo de [ruby, python], y el clásico C.
Esta entrada fue publicada en MongoDB, Uncategorized y etiquetada , . Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s