Vous êtes sur la page 1sur 15

Minera de datos con

MongoDB
JULIO ROBERTO HERNNDEZ RODRGUEZ

Qu es?

Es el proceso de detectar la informacin procesable de los


conjuntos grandes de datos.

Utiliza el anlisis matemtico para deducir los patrones y


tendencias que existen en los datos.

Modelos de minera de datos

Pronstico: clculo de las ventas y prediccin de las cargas del servidor


o del tiempo de inactividad del servidor.

Riesgo y probabilidad: eleccin de los mejores clientes para la


distribucin de correo directo, determinacin del punto de equilibrio
probable para los escenarios de riesgo, y asignacin de probabilidades a
diagnsticos y otros resultados.

Recomendaciones: determinacin de los productos que se pueden


vender juntos y generacin de recomendaciones.

Bsqueda de secuencias: anlisis de los artculos que los clientes han


introducido en el carrito de la compra y prediccin de posibles eventos.

Agrupacin: distribucin de clientes o eventos en grupos de elementos


relacionados, y anlisis y prediccin de afinidades.

Pasos para la generacin de un modelo de minera de datos


1.

Definir el problema

2.

Preparar los datos

3.

Explorar los datos

4.

Generar modelos

5.

Explorar y validar los modelos

6.

Implementar y actualizar los modelos

Bases de datos NoSQL

NoSQLes una clase de SGBD que difiere del modelo clsico


SGBDR.

No usanSQLcomo el principal lenguaje de consultas.

Los datos almacenados no requieren estructuras fijas como


tablas.

No soportan operacionesJOIN

No garantizan completamenteACID(atomicidad, consistencia,


aislamiento y durabilidad)

Son escalables horizontalmente.

Ventajas

Responden a las necesidades de escalabilidad .

Pueden manejar enormes cantidades de datos.

No generan cuellos de botella.

Escalamiento sencillo.

Diferentes BDs NoSQL para diferentes proyectos.

Se ejecutan en clusters de mquinas baratas.

Tipos de BD NoSQL

Base de datos documental

Est constituida por un conjunto de programas que almacenan, recuperan y


gestionan datos de documentos o datos de algn modo estructurados. A diferencia
de las bases de datos relacionales, estas bases de datos estn diseadas alrededor
de una nocin abstracta de "Documento".

Bases de datos orientadas a grafos

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.

Bases de datos clave/valor

La informacin es vinculada nicamente con un ID y su vinculacin a su valor.

Tipos de BD NoSQL

Bases de Datos Multivalor

Permiten vincular varios campos de la tabla con mltiples valores sin


necesidad de tablas intermedias, a diferencia de MySQL, por ejemplo.

Bases de Datos Orientadas a Objetos

La informacin se representa mediante objetos como los presentes en


laprogramacin orientada a objetos. Un ODBMS extiende los lenguajes
con datospersistentesde forma transparente, control de concurrencia,
recuperacin de datos, consultas asociativas y otras capacidades.

Bases de Datos Tabulares

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

Bases de datos en grafo


Neo4j
DEX/Sparksee
AllegroGraph
OrientDB
InfiniteGraph
Sones GraphDB
InfoGrid
HyperGraphDB

Bases de datos clave/valor


Cassandra, deApacheThe
Apache Cassandra
BigTable, deGoogle
Dynamo, deAmazon
MongoDB
Project Voldemort, deLinkedIn
Riak
Redis
Oracle NoSQL

Bases de datos multivalor


OpenQM
Extensible storage engine

Bases de datos orientadas a Bases de datos tabular


objetos
HBase, deApache
ObjectDB
BigTable, deGoogle
Zope Object Database
LevelDB, versin abierta de
db4o
BigTable
GemStone S
Hypertable
Objectivity/DB

MongoDB

MongoDBviene de la palabra en ingls humongous que significa enorme.

Es un es un sistema debase de datosNoSQLorientado a documentos, desarrollado


bajo el concepto decdigo abierto.

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.

El desarrollo de MongoDB empez en octubre de 2007 por la compaa de


software10gen. Ahora MongoDB es una base de datos lista para la produccin de
uso y con muchas caractersticas.

Esta base de datos es altamente utilizada en las industrias. MTV Network,Craiglisty


Foursquareson algunas de las empresas que utilizan esta base de datos.

Elcdigo binarioest disponible para los sistemas operativosWindows,Linux,OS


XySolaris.

Principales problemas

Bloqueo a nivel de base de datos

MongoDB bloquea la base de datos entera cada vez que se realiza una
escritura, lo que reduce la concurrencia drsticamente.

Las escrituras no son durables ni verificables

MongoDB retorna cuando todava no se ha escrito la informacin en el


espacio de almacenamiento permanente, lo que puede ocasionar
prdidas de informacin. En MongoDB 2.2 se cambia el valor por
defecto para escribir en al menos una rplica, pero esto sigue sin
satisfacer la durabilidad ni la verificabilidad.

Problemas de escalabilidad

Tiene problemas de rendimiento cuando el volumen de datos supera


los 100GB.

Casos de Uso

Almacenamiento y registro de eventos

Para sistemas de manejo de documentos y contenido

Comercio Electrnico

Juegos

Problemas de alto volumen de lecturas

Aplicaciones mviles

Almacn de datos operacional de una pgina Web

Manejo de contenido

Almacenamiento de comentarios

Votaciones

Registro de usuarios

Perfiles de usuarios

Sesiones de datos

etc.

Proyectos que utilizan metodologas de desarrollo iterativo o giles

Manejo de estadsticas en tiempo real

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

Su cdigo fuente es libre para distribuirlo y modificarlo.

Escalamiento sencillo.

Una base de datos NoSQL permite a una empresa distribuir la carga entre varios hosts a medida que aumenta la carga.

Diferentes BDs NoSQL para diferentes proyectos

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.

NoSQL y la nube es un ajuste natural

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

Uso de memoria en vez del disco

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.

2.- No estn lo suficientemente maduros para algunas empresas

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.

3.- Limitaciones de Inteligencia de Negocios

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.

4.- La falta de experiencia

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.

5.- Problemas de compatibilidad

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.

Vous aimerez peut-être aussi