Apuntes MongoDB

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 3

Introducción

Mongo es una base de datos no relacional: Está orientada al documento (en concreto usa la
estructura JSON) y tiene una estructura dinámica.

'firstname':'Ivan',

'lastname:'Villa',

'hobbies':['jugar al wow','programar']

},

'firstname':'Ybis',

'lastname:'Vientosolar',

'nacimiento':'Lunargenta'

},

a : 1,

b : 2,

c:3

Como se puede ver en el ejemplo, no tiene por qué tener los mismos campos en cada entrada.
No se pueden relacionar dos objetos entre sí de forma algebraica como con SQL: no soporta
JOINS. No se pueden relacionar dos colecciones en MangoDB. Tampoco soporta
TRANSACTIONS.

Por un lado se encuentran los programas escalables, pero poco funcionales y por otro
funcionalidades muy ricas, pero poco escalables. Con Mongo se trata de obtener funcionalidad
sin perder escalabilidad y rendimiento, siendo este el motivo por lo cual no soporta ni JOINS
(son nocivas para la escalabilidad horizontal) ni TRANSACTIONS (son difíciles de implementar
en un sistema muy escalable horizontalmente). Sin embargo sí soporta índices, que son útiles,
y además no impiden la escalabilidad horizontal, y aunque son difíciles de implementar
también soporta los índices secundarios.
Arquitectura
Sobre la arquitectura en Java, hay dos formas de conectar con una base de datos: con una
consola de Mongo. Pero como vamos a hacer un blog durante el curso, lo que vamos a hacer
es una aplicación en Java, donde estará nuestro código.

Ahí vamos a usar dos Frameworks: Spark Java, inspirado por Sinatra y que nos facilitará la vida
para trabajar con URL y Free Marker que permite crear respuestas HTTP y trabajar con MVC.
Hay una librería de Mongo que hará las conexiones TPC con la base de datos de Mongo.

Por otro lado el Usuario se conectará a nuestro código de forma remota para poder utilizar lo
que vamos a construir a través del puerto 8082, que se trata de un blog.

Consola de Mongo
Imaginemos que tenemos una colección llamada "cosas", y que queremos introducir un
elemento:

db.cosas.save ( { a : 1 , b : 2 , c : 3} )

Esto nos devolverá un resultado, en el que nos documentan sobre la inserción. Si luego
queremos consultar lo que hay en la colección "cosas", teclearemos:

db.cosas.find( { a : 1 } )

Esto nos devolverá las entradas, los objetos en los que 'a' sea igual a '1'.

Podemos introducir objetos dentro de objetos en la colección:

db.cosas.save ( { a : 1 , b : 1 , fruta : [ "manzana" , "naranja" , "pera" ] } )

Y no sólo arrays, sino colecciones dentro de colecciones:

db.cosas.save ( { nombre:"ivan" , gustos : { color : "rojo" , ciudad : "cadiz" } } )

Esto es muy útil porque las colecciones se almacenan de la misma forma que almacenaríamos
un objeto en un programa. Hay muchos más comandos que se pueden usar en la consola.

Instalando Mongo
Requerimientos
Está testado en Windows 7, OS X y no hay motivos por los que no funcione en Linux. Además
se ha probado con JDK 1.6 y con JDK 1.7 (para comprobar la versión de Java, hay que introducir
en la consola del sistema operativo el comando java -version).

Instalando Mongo
Para instalar hay que entrar en www.mongodb.org/downloads, donde podemos descargar
Mongo para el Sistema Operativo que tengamos en nuestro Ordenador, teniendo en cuenta
los Bits en los que esté trabajando nuestro equipo (32 o 64 bits). Para comprobar que
arquitectura tenemos que introducir el comando wmic os get osarchitecture en la consola.
Posteriormente ejecutamos el instalador que nos hemos descargado, abrimos una línea de
comandos y probamos que esté correctamente, entrando en el directorio de instalación ( cd
"c:\Program Files\MongoDB 2.6 Standard\bin"). En ese directorio ejecutamos mongod.exe.

Sin cerrar, abrimos otra consola y la ponemos al lado de la que ya tenemos. Entramos en el
mismo directorio y ejecutamos mongo.exe. Ahí podemos introducir comandos de la consola,
como show collections, que nos enseña las colecciones que hay. Como está vacío, podemos
añadir una entrada para ver cómo funciona:

db.cosas.insert ( {nombre:"Yo"} )

Una vez hecho esto, ya hemos terminado de comprobar que Mongo está bien configurado, por
lo que podemos ir al siguiente paso.

Instalando Maven
Ahora necesitamos utilizar dos herramientas para las tareas, para automatizar las tareas. Lo
primero es instalar Maven, descargarlo y descomprimirlo. Luego agregamos el directorio de
Maven a los PATH de Windows.

Escribimos mvn archetype:generate, lo que nos genera un arquetipo. Introducimos el 251.


Seleccionamos la 6ª opción, para tener la última versión de ese arquetipo, com.10gen para
groupID, M101J para ArtefactID, y TEN para Package. Esto nos crea un nuevo directorio
llamado M101J.

Instalando IntelliJ IDEA


Este es el IDE que vamos a utilizar, y al que podemos importar proyectos, pinchando en File,
Import Project, escoger el que hemos creado al instalar MAVEN usando para ello el pom.xml,
descargando automáticamente SOURCES y DOCUMENTATION y ejecutarlo. Así de sencillo.

También podría gustarte