Académique Documents
Professionnel Documents
Culture Documents
MongoDB
JULIO ROBERTO HERNNDEZ RODRGUEZ
Qu es?
Definir el problema
2.
3.
4.
Generar modelos
5.
6.
No soportan operacionesJOIN
Ventajas
Escalamiento sencillo.
Tipos de BD NoSQL
Representan la informacin como nodos de ungrafoy sus relaciones con las aristas
del mismo. Debe estar absolutamente normalizada, esto quiere decir que cada tabla
tendra una sola columna y cada relacin tan solo dos.
Tipos de BD NoSQL
Es una base de datos donde las tablas y las relaciones son las
estructuras principales para la representacin de datos. Es similar a una
BDR, y es ms fcil de generar que una multivariable.
Ejemplos
Bases de datos
documentales
CouchDB, deApache CouchDB
MongoDB, de10gen
RavenDB, deHibernating
Rhinos.
BaseX
djondb
eXist
SimpleDB, deAmazon
IBM Lotus Domino
Terrastore
MongoDB
En vez de guardar los datos en tablas como se hace en las base de datos
relacionales, MongoDB guarda estructuras de datos en documentos tipoJSONcon un
esquema dinmico (MongoDB llama ese formatoBSON), haciendo que la integracin
de los datos en ciertas aplicaciones sea ms fcil y rpida.
Principales problemas
MongoDB bloquea la base de datos entera cada vez que se realiza una
escritura, lo que reduce la concurrencia drsticamente.
Problemas de escalabilidad
Casos de Uso
Comercio Electrnico
Juegos
Aplicaciones mviles
Manejo de contenido
Almacenamiento de comentarios
Votaciones
Registro de usuarios
Perfiles de usuarios
Sesiones de datos
etc.
Lenguajes de programacin
soportados
C++
C# /.NET
Erlang
Haskell
Java
JavaScript
Lisp
node.JS
Perl
PHP
Python
Ruby
Scala
Ventajas de NoSQL
Es de cdigo abierto
Escalamiento sencillo.
Una base de datos NoSQL permite a una empresa distribuir la carga entre varios hosts a medida que aumenta la carga.
MongoDB y Redis son buenas opciones para el almacenamiento de escritura con alta frecuencia, rara vez leen los datos
estadsticos, tales como web, contador de visitas.
Hadoop, una libre, DB distribuida que hace un buen trabajo almacenando grandes de datos tales como estadsticas del
tiempo o el trabajo de anlisis de negocio.
Memcache, una db transente, destaca en la web, el almacenamiento de sesiones, y las estadsticas a corto plazo.
Cassandra y Riak (clusters automticos, tiendas redundantes) un buen rendimiento en entornos con aplicaciones de alta
disponibilidad, donde el tiempo de funcionamiento mximo es de vital importancia.
Los servidores de hoy en da son de bajo costo y fcilmente pueden ser ampliados a peticin. Toda la tecnologa de la
nube se basa en la virtualizacin, cuya debilidad es que la E/S, la memoria y CPU que deben ser giles
Lo que impide inconsistente rendimiento I/O. Y como los almacenes de datos NoSQL aprovechan tpicamente particiones
horizontales, son capaces de tomar ventaja en la nube de la elstica del aprovisionamiento.
Desventajas de noSQL
1.- El cdigo abierto puede significar una "mancha" en el soporte para las empresas
El soporte tcnico de pago siempre ha sido mejor que el ofrecido al software libre y no cuentan con el respaldo de una marca
global.
A pesar de sus puestas en prctica en algunas grandes empresas, las bases de datos NoSQL an se enfrentan a un problema de
credibilidad importante con muchas empresas. Los crticos sealan la falta de madurez de NoSQL y los posibles problemas de
inestabilidad, mientras que citan la madurez, y una gran funcionalidad y estabilidad de los SGBDR.
Pueden estas bases de datos proporcionar la clase de minera de datos rigurosos que las empresas se utilizan con las RDBMSes?
Cuntos conocimientos de programacin se necesitan para hacer la consulta ad hoc y anlisis?
Las bases de datos NoSQL no tienen muchos ganchos para el uso general de herramientas de BI, mientras que la ms simple
consulta ad-hoc y anlisis implica conocimientos de programacin bastante buenos. Por ejemplo, Toad para bases de datos en la
nube proporciona capacidades de consulta ad-hoc para algunas bases de datos NoSQL.
La novedad de NoSQL significa que no hay una gran cantidad de desarrolladores y administradores que conocen la tecnologa lo
que hace difcil a las empresas encontrar personas con los conocimientos tcnicos apropiados. Por el contrario, el mundo RDBMS
tiene miles de personas muy cualificadas.
A diferencia de las bases de datos relacionales, las bases de datos NoSQL tienen pocas normas en comn. Cada base de datos
NoSQL tiene su propia API, las interfaces de consultas son nicas y tienen peculiaridades. Esta falta de normas significa que es
imposible cambiar simplemente de un proveedor a otro, por si no quedara satisfecho con el servicio.