Que es MongoDB
Upcoming SlideShare
Loading in...5
×
 

Que es MongoDB

on

  • 745 views

 

Statistics

Views

Total Views
745
Views on SlideShare
745
Embed Views
0

Actions

Likes
0
Downloads
10
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Que es MongoDB Que es MongoDB Presentation Transcript

  • Que es MongoDB? MongoDB (de la palabra en inglés “humongous” que significa enorme) es un sistema de base de datos NoSQL orientado a documentos, desarrollado bajo el concepto de código abierto. Es de alto rendimiento y de esquema libre, está licenciado como GNU AGPL 3.0, de modo que se puede descargar gratuitamente desde su sitio web: http://www.mongodb.org/downloads Las características mas destacadas de MongoDB son su velocidad y su sencillo, pero potente, sistema de consulta de datos, en resumen es un sistema de base de datos que tiene el equilibrio entre rendimiento y funcionalidad en el que podemos realizar casi todas las consultas que utilizaríamos en un sistema relacional pero sin sacrificar el rendimiento.
  • Quienes lo usan? http://www.mongodb.org/display/DOCS/Productio n+Deployments
  • Que ventajas nos ofrece? • • • • • • • Es gratuito y es multiplataforma Es rápida y es funcional Fácil de probar Fácil de entender Escalabilidad, Replicación y Alta Disponibilidad Formación Soporte Comercial
  • Es gratuito y es multiplataforma MongoDB esta disponible para descarga gratuita desde su sitio web: http://www.mongodb.org/download Esta disponible para todas las plataformas:
  • Es rápido y es funcional Normalmente tenemos que sacrificar rendimiento por funcionalidad o viceversa, incluso usar dos sistemas (RDBMS + Cache) redundando los datos, MongoDB alcanza el equilibrio entre rendimiento y funcionalidad.
  • Fácil de probar: Una instancia se levanta en minutos Podemos tener una instancia de mongo levantada en cuestión de minutos, solo tenemos que de bajar los ejecutables, descomprimirlos, crear un directorio de datos y arrancar la instancia con: mongod --dbpath c:data
  • Fácil de probar: Drivers para multitud de lenguajes MongoDB tiene drivers mantenidos para: • C • C++ • Erlang • Haskell • Java • Javascript • .NET (C# F#, PowerShell, etc) • Node.js • Perl • PHP • Python • Ruby • Scala Ademas hay una larga lista de Drivers y Herramientas mantenidos por la Comunidad: http://www.mongodb.org/display/DOCS/Drivers
  • Fácil de Entender: Conceptos Conocidos Bases de Datos Bases de Datos Tablas Colecciones Registros Documentos
  • Fácil de Entender: Documento = Registro/Registros Que es un documento? > db.persons.findOne() { "_id" : ObjectId("5062b9a0fe2d230a58c5c104"), "Name" : "Antonio Gomez", "Age" : 30, "Chidls" : [ { "Name" : "Pedro Gomez", "Age" : 4 }, { "Name" : "Antonio Gomez", "Age" : 11 } ] }
  • Fácil de Entender: Funcionalidades similares Consultas dinámicas (1/3): SELECT * FROM PERSONS db.persons.find() SELECT * FROM PERSONS WHERE NAME = “Antonio Gomez” db.persons.find({Name:"Antonio Gomez"}) SELECT AGE FROM PERSONS WHERE NAME = “Antonio Gomez” AND AGE = 30 db.persons.find({Name:"Antonio Gomez“, Age:30}, {Age:true})
  • Fácil de Entender: Funcionalidades similares Índices: Ascendente db.persons.ensureIndex({Age: 1}) Descendente db.persons.ensureIndex({Age: -1}) Unico db.persons.ensureIndex({Name: 1}, {unique: true})
  • Escalabilidad, Replicación y Alta Disponibilidad Replica Sets http://www.mongodb.org/display/DOCS/Replica+Sets Maestro / Esclavo (en desuso) http://www.mongodb.org/display/DOCS/Master+Slave Auto Sharding http://www.mongodb.org/display/DOCS/Sharding
  • Fácil de Instalar: Instalación Ubuntu La instalación es realmente sencilla, simplemente hay que añadir el repositorio de 10gen e instalarlo con apt-get. Para añadir el repositorio e instalar MongoDB: 1. Importamos la key GPC publica de 10gen con: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10 2. Añadimos esta linea a nuestra lista de repositories, que esta en /etc/apt/sources.list: deb http://downloadsdistro.mongodb.org/repo/ubuntu-upstart dist 10gen 3. Instalamos con: 1. sudo apt-get update 2. sudo apt-get install mongodb-10gen 4. Arrancamos el servidor con: sudo service mongodb start Listo, ya tenemos el servidor de MongoDB instalado y funcionando.
  • Fácil de Instalar: Instalación Windows La instalación sobre Windows es tan simple como bajar un Zip y descomprimirlo en un directorio. Una vez tenemos los binarios de MongoDB descomprimidos en un directorio podemos instalarlo como un servicio de Windows o correrlo en la consola: 1. Correrlo en la consola: 1. Creamos una carpeta donde se alojaran los datos (ejem c:data) 2. Ejecutamos el mongod pasandole la carpeta: mongod --dbpath c:data 2. Instalarlo como servicio: 1. Creamos una carpeta donde se alojaran los datos (ejem c:data) 2. Creamos un fichero de log (ejem: cdataloglog.txt) 3. Ejecutamos el mongod pasandole la carpeta, el log y la opcion de servicio: mongod --dbpath c:data --logpath cdataloglog.txt --service 4. Buscamos el servicio Mongo DB en los servicios de windows y lo iniciamos Listo, ya tenemos el servidor de MongoDB instalado y funcionando.
  • Sin Instalación: MongoDB en la nube Hay varios proveedores que te ofrecen instancias gratuitas de MongoDB en la nube de manera que puedas hacer pruebas sin necesidad de tener instalada ninguna instancia de MongoDB. • Mongolab te ofrece una instancia gratuita de hasta 500 megas: • https://mongolab.com/home • Mongohq te ofrece una instancia gratuita de hasta 512 megas: • https://www.mongohq.com Estas instancias gratuitas son mas que suficientes para las pruebas de desarrollo e incluso para pequeñas aplicaciones.
  • Formación • http://education.10gen.com/ • http://groups.google.com/group/mongodb-user • irc://irc.freenode.net/#mongodb Soporte Comercial • http://www.10gen.com/
  • Referencias • MongoDB: The Definitive Guide • 10gen presentations • Why MongoDB is Awesome