Cargando

Ir a contenido


 


Mongodb, base de datos nosql

MongoDB es una base de datos NoSQL, aquí nos olvidamos de la estructura clasica de tablas y relaciones entre tablas del modelo de bases de datos relacionales.


Escrito por el feb 14 2014 01:50


logo-mongodb-onwhite.jpg


MongoDB es una base de datos NoSQL, aquí nos olvidamos de la estructura clasica de tablas y relaciones entre tablas del modelo de bases de datos relacionales, en MongoDB lo más parecido que encontraremos a una tabla son las colecciones, que vienen a ser una especie de listas donde vamos almacenando los diferentes objetos y sus atributos. Se abandona el enfoque relacional por bases de datos orientadas a objetos y de esta manera es como se procesa la información.

Entre los usuarios mas conocidos de esta base de datos estan Google, Facebook, Ney York times, foursquare, Digg, entre otros. Son servicios que tienen una cantidad de consultas en sus bases de datos impresionantes, además de necesidades de escalar de manera horizontal constantemente.

Estas bases de datos son bastantes eficientes en entornos de clustering.
las Bases de datos relacionales tienen limitaciones cuando se escalan grandes volumenes de datos.
Además de las ventajas cuando se tienen que añadir o reemplazar nodos caidos sin

tener que apagar el hardware, servidores o datacenters, ni el software o bases de datos.

INSTALACION DE MONGODB
Las instrucciones de instalación las encontramos en el propio site de MongoDB.
Para el caso de Linux 64 bit:

Importamos una clave de MongoDB para Ubuntu
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10

Lo añadirlo a los repositorios para tener la ultima version
deb http://downloads-distro.mongodb.org/repo/debian-sysvinit dist 10gen'

Actualizamos los repositorios
sudo apt-get update

Instalamos MongoDB
sudo apt-get install mongodb-10gen


Para iniciar el motor de MongoDB ejecutamos el sisguiente comando
sudo /etc/init.d/mongodb start

Para detenerlo
sudo /etc/init.d/mongodb stop


Conceptos basicos de base de datos MongoDB

Una base de datos en MongoDB tiene diferentes conceptos a una base de datos regular como MySQL. Cada registro o unidad básica de datos se le denomina documento. Y cada conjunto de documentos, que formarían una tabla, se le llama colección.

Un documento se podría comprar con el concepto de fila y una colección a una tabla.

Ejemplo de base de datos
Una vez que inciamos el motor de MongoDb trabajaremos desde la consola creando una base de datos.

Creamos la base de datos Empresadb
use Clientes


Ingresamos datos

Lo siguiente será insertar un elemento dentro de la colección de Contactos
db.contactos.save({
Nombre: "Pedro",
Apellidos: "Martínez Campo",
Edad:22,
Aficiones: ["fútbol","tenis","ciclismo"],
Amigos: [ {Nombre:"María", Edad:22}, {Nombre:"Luis", Edad:28 }]
}[i][color="#000000"])


El documento anterior es un clásico documento JSON. Tiene strings, arrays, subdocumentos y números. En la misma colección podríamos guardar un documento como este. Aqui guardamos un registro de contacto que a su vez contiene las colecciones Aficiones y Amigos dentro.

Los registro no necesitan tener un id o campo clave ya que al ser objetos se identifican automaticamente

Para realizar una busqueda haremos una consulta por ejemplo por nombre

db.contactos.find({Nombre:"Pedro"});


Nos devolvera los sugiente datos ç
{ "_id" : ObjectId("51bcc8986fba2c81d4e8a1d6"), “Nombre” : "Pedro",
“Apellidos” : "Martínez Campo",.....}


Buscara todos los registro que coincidan con el nombre Pedro
Si queremos utilizar un lenguaje de programación existen drivers para un gran número de ellos. Hay drivers oficiales para C#, Java, Node.js, PHP, Python, Ruby, C, C++ y Perl.
¿Te ha gustado y ayudado este Tutorial?
Puedes premiar al autor pulsando este botón para darle un punto positivo
  • -
  • 0

Tutoriales Relacionados


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!
-
VOTA
5
0%
4
0%
3
0%
2
0%
1
0%

  Información

  •   Publicado feb 14 2014 01:50
  •   Actualizado feb 18 2014 11:34
  •   Visitas 1.1K