SlideShare una empresa de Scribd logo
1 de 9
Descargar para leer sin conexión
MsC. Anthony Rafael Sotolongo León
MsC. Yudisney Vazquez Ortíz
Universidad de las Ciencias
Informáticas(UCI)
MongoDB vs CouchDB: selección de
una base de datos NoSQL para las
aplicaciones de comercio
electrónico
asotolongo@uci.cu
LAS BASES DE DATOS ACORDE A NECESIDADES DE
APLICACIONES DE COMERCIO ELECTRÓNICO HAN
IDO POCO A POCO MOVIÉNDOSE A LAS NOSQL
DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA 2
Relacional NoSQL
Principales tendencias tecnológicas desde el 2102
http://www.infoq.com/news/2012/03/top-technologies-qcon-london
EMPLEO DE BASES DE DATOS NOSQL
3DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA
Facebook
Google
Amazon
Yabblr
Bet Ha Bracha
CouchDB
Bases de datos NoSQL
MongoDB CouchDB
¿CUÁL BASE DE DATOS SELECCIONAR?
4DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA
Características
Funcionalidades
Necesidades
Características MongoDB 2.0 CouchDB 1.0.1
Lenguaje C++ Erlang
Objetos Colecciones,
documentos(JSON)
Documentos(JSON),
vistas
Actualización En el lugar MVCC
Acceso TCP/IP HTTP
Archivos GridFS Attachments
CAPACIDAD DE MODELACIÓN DE DATOS Y
CONSULTA
5DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA
•Capacidad de modelación.
Christian Kvalheim presenta: “Sample e-commerce system with
MongoDB”.
•Capacidad de consulta:
Ambas soportan funciones Map/Reduce, o especificidades de las API de
acceso a las BD.
CAPACIDAD DE REPLICACIÓN Y FRAGMENTACIÓN
6DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA
•Replicación.
-MongoDB permite la replicación maestro-esclavo.
-CouchDB permite la replicación maestro-maestro, contando con un
algoritmo de resolución de conflictos para evitar los problemas con la
consistencia de la información.
•Fragmentación :
-MongoDB permite la fragmentación nativa de datos mediante el
mecanismo autoshardind con los llamados Shard Keys.
-CouchDB, no posee uno nativo de fragmentación, pero se puede lograr
mediante aplicaciones intermediarias o utilizando el mecanismo de
Map/Reduce o filtros.
TIEMPOS DE RESPUESTA EN «INSERCIÓN Y
SELECCIÓN DE DOCUMENTOS»
7DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA
0
0.1
0.2
0.3
0.4
10 40 70 100
Segundos
Usuarios
MongoDB (100 doc)
0
20
40
60
80
10 40 70 100
Segundos
Usuarios
CouchDB (100 doc)
0
0.002
0.004
0.006
0.008
10 40 70 100
Segundos
Usuarios
find_one()-MongoDB (100000 doc)
0
0.02
0.04
0.06
0.08
10 40 70 100
Segundos
Usuarios
get()-CouchDB (100000 doc)
Experimento:
Python | Pentium 4
a 3.00 GHz | 2 GB de
RAM | Ubuntu 11.10
HD a 7200 rpm
TIEMPOS DE RESPUESTA EN «CONSULTAS
MAP/REDUCE Y ENVÍO DE ARCHIVOS»
8DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA
0.10
0.11
0.11
0.12
0.12
0.13
0.13
0.14
10 40 70 100
Map/Reduce CouchDB (100 000 doc)
0
5
10
15
20
25
30
35
10 40 70 100
Map/Reduce MongoDB(100000 doc)
0
5
10
15
20
25
30
35
40
45
10 40 70 100
Segundos
Usuarios
0
10
20
30
40
50
60
70
80
10 40 70 100
Segundos
Usuarios
Envío de archivos
Experimento:
Python | Pentium 4
a 3.00 GHz | 2 GB de
RAM | Ubuntu 11.10
HD a 7200 rpm
CONCLUSIONES
 Las aplicaciones de comercio electrónico están tendiendo al uso de bases
de datos NoSQL orientadas a documentos.
 En la comparación de dichas bases de datos se concluyó que:
 Tienen características similares respecto a la capacidad de modelación y consulta, no
siendo así en la fragmentación y replicación.
 Las velocidades de inserción y selección de un documento en MongoDB son superiores
a las de CouchDB.
 Mientras que en las peticiones con funciones Map/Reduce para la selección de varios
documentos CouchDB se comporta mejor.
9DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA

Más contenido relacionado

La actualidad más candente

Ejercicio bancoss
Ejercicio bancossEjercicio bancoss
Ejercicio bancossAlex Yungan
 
JDBC MONOGRAFIA
JDBC MONOGRAFIAJDBC MONOGRAFIA
JDBC MONOGRAFIASefira111
 
Niveles De Aislamiento
Niveles De AislamientoNiveles De Aislamiento
Niveles De Aislamientoguest1db220
 
Bases distribuidas en mysql
Bases distribuidas en mysqlBases distribuidas en mysql
Bases distribuidas en mysqlGiovanni Peruch
 
Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.Julicamargo
 
Arquitectura Web y Aplicaciones web (Infografia)
Arquitectura Web y Aplicaciones web (Infografia)Arquitectura Web y Aplicaciones web (Infografia)
Arquitectura Web y Aplicaciones web (Infografia)FelixVasquez32
 
3.2 manejadores de bases de datos
3.2 manejadores de bases de datos3.2 manejadores de bases de datos
3.2 manejadores de bases de datosisraelmillan8
 
Modelo e r
Modelo e rModelo e r
Modelo e rgarci17
 
Introducción a cloud computing
Introducción a cloud computingIntroducción a cloud computing
Introducción a cloud computingK35
 
Ejemplo creacion de un etl
Ejemplo creacion de un etlEjemplo creacion de un etl
Ejemplo creacion de un etlmarilgarcia7
 
Introducción a las Bases de Datos
Introducción a las Bases de DatosIntroducción a las Bases de Datos
Introducción a las Bases de DatosEvelynUBA
 
CREACION Y MANEJO DE LA BASE DE DATOS
CREACION Y MANEJO DE LA BASE DE DATOSCREACION Y MANEJO DE LA BASE DE DATOS
CREACION Y MANEJO DE LA BASE DE DATOSDarwin Durand
 
Mapa mental de base de datos
Mapa mental de base de datosMapa mental de base de datos
Mapa mental de base de datosJorge Mengelle
 

La actualidad más candente (20)

Ejercicio bancoss
Ejercicio bancossEjercicio bancoss
Ejercicio bancoss
 
Programación III (Java) - 08 threads
Programación III (Java) - 08 threadsProgramación III (Java) - 08 threads
Programación III (Java) - 08 threads
 
JDBC MONOGRAFIA
JDBC MONOGRAFIAJDBC MONOGRAFIA
JDBC MONOGRAFIA
 
ADO
ADOADO
ADO
 
Niveles De Aislamiento
Niveles De AislamientoNiveles De Aislamiento
Niveles De Aislamiento
 
Bases distribuidas en mysql
Bases distribuidas en mysqlBases distribuidas en mysql
Bases distribuidas en mysql
 
Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.Características, componentes y arquitectura de los dbms.
Características, componentes y arquitectura de los dbms.
 
Dns caracteristicas-y-propiedades
Dns caracteristicas-y-propiedadesDns caracteristicas-y-propiedades
Dns caracteristicas-y-propiedades
 
Arquitectura Web y Aplicaciones web (Infografia)
Arquitectura Web y Aplicaciones web (Infografia)Arquitectura Web y Aplicaciones web (Infografia)
Arquitectura Web y Aplicaciones web (Infografia)
 
3.2 manejadores de bases de datos
3.2 manejadores de bases de datos3.2 manejadores de bases de datos
3.2 manejadores de bases de datos
 
Modelo e r
Modelo e rModelo e r
Modelo e r
 
Introducción a cloud computing
Introducción a cloud computingIntroducción a cloud computing
Introducción a cloud computing
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
SERVIDOR PROXY
SERVIDOR PROXYSERVIDOR PROXY
SERVIDOR PROXY
 
Ejemplo creacion de un etl
Ejemplo creacion de un etlEjemplo creacion de un etl
Ejemplo creacion de un etl
 
Introducción a las Bases de Datos
Introducción a las Bases de DatosIntroducción a las Bases de Datos
Introducción a las Bases de Datos
 
Historia de mysql
Historia de mysqlHistoria de mysql
Historia de mysql
 
CREACION Y MANEJO DE LA BASE DE DATOS
CREACION Y MANEJO DE LA BASE DE DATOSCREACION Y MANEJO DE LA BASE DE DATOS
CREACION Y MANEJO DE LA BASE DE DATOS
 
Mapa mental de base de datos
Mapa mental de base de datosMapa mental de base de datos
Mapa mental de base de datos
 
Fundamentos de BD - Unidad 5 algebra relacional
Fundamentos de BD - Unidad 5 algebra relacionalFundamentos de BD - Unidad 5 algebra relacional
Fundamentos de BD - Unidad 5 algebra relacional
 

Similar a Mongodb vs couchdb

Cursos Big Data Open Source
Cursos Big Data Open SourceCursos Big Data Open Source
Cursos Big Data Open SourceStratebi
 
Proyecto big data
Proyecto big dataProyecto big data
Proyecto big dataDiegoMeja27
 
Linux en súperservidores
Linux en súperservidoresLinux en súperservidores
Linux en súperservidoresprofesorgavit0
 
INFRAESTRUCTURA-CECAD v6.pptx
INFRAESTRUCTURA-CECAD v6.pptxINFRAESTRUCTURA-CECAD v6.pptx
INFRAESTRUCTURA-CECAD v6.pptxEthicforWater
 
Un acercamiento a las bases de datos NoSQL
Un acercamiento a las bases de datos NoSQLUn acercamiento a las bases de datos NoSQL
Un acercamiento a las bases de datos NoSQLJavier Guillot Jiménez
 
Desmitificando el Big Data
Desmitificando el Big DataDesmitificando el Big Data
Desmitificando el Big DataStratebi
 
Unidad 4: Administración de datos en dispositivos móviles
Unidad 4: Administración de datos en dispositivos móvilesUnidad 4: Administración de datos en dispositivos móviles
Unidad 4: Administración de datos en dispositivos móvilesJuan Anaya
 
Santiago Trujillo Piter Marcelino.pdf
Santiago Trujillo Piter Marcelino.pdfSantiago Trujillo Piter Marcelino.pdf
Santiago Trujillo Piter Marcelino.pdfronald flores
 
Internet de las Cosas, por Ulises Gascón - Parte II
Internet de las Cosas, por Ulises Gascón - Parte IIInternet de las Cosas, por Ulises Gascón - Parte II
Internet de las Cosas, por Ulises Gascón - Parte IIHuelva Inteligente
 
William cloud computing
William cloud computingWilliam cloud computing
William cloud computingwilliPerez12
 
Pablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open DataPablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open DataSmash Tech
 
Arquitectura de Data Fabric: Clave en proyectos de Big Data y Machine Learning
Arquitectura de Data Fabric: Clave en proyectos de Big Data y Machine LearningArquitectura de Data Fabric: Clave en proyectos de Big Data y Machine Learning
Arquitectura de Data Fabric: Clave en proyectos de Big Data y Machine LearningDenodo
 
SDN (Software Define Networking) - The evolution of the Network
SDN (Software Define Networking) - The evolution of the NetworkSDN (Software Define Networking) - The evolution of the Network
SDN (Software Define Networking) - The evolution of the NetworkLogicalis Latam
 
La norma IEC 61850: estándar de comunicación para subestaciones eléctricas
La norma IEC 61850: estándar de comunicación para subestaciones eléctricasLa norma IEC 61850: estándar de comunicación para subestaciones eléctricas
La norma IEC 61850: estándar de comunicación para subestaciones eléctricasfernando nuño
 

Similar a Mongodb vs couchdb (20)

Cursos Big Data Open Source
Cursos Big Data Open SourceCursos Big Data Open Source
Cursos Big Data Open Source
 
Proyecto big data
Proyecto big dataProyecto big data
Proyecto big data
 
Linux en súperservidores
Linux en súperservidoresLinux en súperservidores
Linux en súperservidores
 
Data as a Service
Data as a ServiceData as a Service
Data as a Service
 
Sistemas sena
Sistemas senaSistemas sena
Sistemas sena
 
INFRAESTRUCTURA-CECAD v6.pptx
INFRAESTRUCTURA-CECAD v6.pptxINFRAESTRUCTURA-CECAD v6.pptx
INFRAESTRUCTURA-CECAD v6.pptx
 
DSpace Workshop
DSpace Workshop DSpace Workshop
DSpace Workshop
 
Un acercamiento a las bases de datos NoSQL
Un acercamiento a las bases de datos NoSQLUn acercamiento a las bases de datos NoSQL
Un acercamiento a las bases de datos NoSQL
 
Desmitificando el Big Data
Desmitificando el Big DataDesmitificando el Big Data
Desmitificando el Big Data
 
Unidad 4: Administración de datos en dispositivos móviles
Unidad 4: Administración de datos en dispositivos móvilesUnidad 4: Administración de datos en dispositivos móviles
Unidad 4: Administración de datos en dispositivos móviles
 
Santiago Trujillo Piter Marcelino.pdf
Santiago Trujillo Piter Marcelino.pdfSantiago Trujillo Piter Marcelino.pdf
Santiago Trujillo Piter Marcelino.pdf
 
Internet de las Cosas, por Ulises Gascón - Parte II
Internet de las Cosas, por Ulises Gascón - Parte IIInternet de las Cosas, por Ulises Gascón - Parte II
Internet de las Cosas, por Ulises Gascón - Parte II
 
William cloud computing
William cloud computingWilliam cloud computing
William cloud computing
 
Pablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open DataPablo Doval | Plain Concepts | Open Data
Pablo Doval | Plain Concepts | Open Data
 
Arquitectura de Data Fabric: Clave en proyectos de Big Data y Machine Learning
Arquitectura de Data Fabric: Clave en proyectos de Big Data y Machine LearningArquitectura de Data Fabric: Clave en proyectos de Big Data y Machine Learning
Arquitectura de Data Fabric: Clave en proyectos de Big Data y Machine Learning
 
SDN (Software Define Networking) - The evolution of the Network
SDN (Software Define Networking) - The evolution of the NetworkSDN (Software Define Networking) - The evolution of the Network
SDN (Software Define Networking) - The evolution of the Network
 
La norma IEC 61850: estándar de comunicación para subestaciones eléctricas
La norma IEC 61850: estándar de comunicación para subestaciones eléctricasLa norma IEC 61850: estándar de comunicación para subestaciones eléctricas
La norma IEC 61850: estándar de comunicación para subestaciones eléctricas
 
Primera capacitación en sdn para el proyecto Bella-T
Primera capacitación en sdn para el proyecto Bella-TPrimera capacitación en sdn para el proyecto Bella-T
Primera capacitación en sdn para el proyecto Bella-T
 
Mitigación de ataques DDoS en la Anella Científica
Mitigación de ataques DDoS en la Anella CientíficaMitigación de ataques DDoS en la Anella Científica
Mitigación de ataques DDoS en la Anella Científica
 
2-CapaPercepción.pdf
2-CapaPercepción.pdf2-CapaPercepción.pdf
2-CapaPercepción.pdf
 

Más de Anthony Sotolongo

Evolucion de PostgreSQL hasta 9.4
Evolucion de PostgreSQL hasta 9.4Evolucion de PostgreSQL hasta 9.4
Evolucion de PostgreSQL hasta 9.4Anthony Sotolongo
 
Evolución y avances del Gestor PostgreSQL
Evolución y avances del  Gestor PostgreSQLEvolución y avances del  Gestor PostgreSQL
Evolución y avances del Gestor PostgreSQLAnthony Sotolongo
 
Bases de datos NoSQL orientadas a documentos
Bases de datos NoSQL orientadas a documentosBases de datos NoSQL orientadas a documentos
Bases de datos NoSQL orientadas a documentosAnthony Sotolongo
 
Características nosql de postgresql
Características nosql de postgresqlCaracterísticas nosql de postgresql
Características nosql de postgresqlAnthony Sotolongo
 
Operadores para json en pg 9.2
Operadores para json en pg 9.2Operadores para json en pg 9.2
Operadores para json en pg 9.2Anthony Sotolongo
 

Más de Anthony Sotolongo (6)

Evolucion de PostgreSQL hasta 9.4
Evolucion de PostgreSQL hasta 9.4Evolucion de PostgreSQL hasta 9.4
Evolucion de PostgreSQL hasta 9.4
 
Evolución y avances del Gestor PostgreSQL
Evolución y avances del  Gestor PostgreSQLEvolución y avances del  Gestor PostgreSQL
Evolución y avances del Gestor PostgreSQL
 
Bases de datos NoSQL orientadas a documentos
Bases de datos NoSQL orientadas a documentosBases de datos NoSQL orientadas a documentos
Bases de datos NoSQL orientadas a documentos
 
Características nosql de postgresql
Características nosql de postgresqlCaracterísticas nosql de postgresql
Características nosql de postgresql
 
Operadores para json en pg 9.2
Operadores para json en pg 9.2Operadores para json en pg 9.2
Operadores para json en pg 9.2
 
Pgpymongo y pgpycouch
Pgpymongo y pgpycouchPgpymongo y pgpycouch
Pgpymongo y pgpycouch
 

Mongodb vs couchdb

  • 1. MsC. Anthony Rafael Sotolongo León MsC. Yudisney Vazquez Ortíz Universidad de las Ciencias Informáticas(UCI) MongoDB vs CouchDB: selección de una base de datos NoSQL para las aplicaciones de comercio electrónico asotolongo@uci.cu
  • 2. LAS BASES DE DATOS ACORDE A NECESIDADES DE APLICACIONES DE COMERCIO ELECTRÓNICO HAN IDO POCO A POCO MOVIÉNDOSE A LAS NOSQL DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA 2 Relacional NoSQL Principales tendencias tecnológicas desde el 2102 http://www.infoq.com/news/2012/03/top-technologies-qcon-london
  • 3. EMPLEO DE BASES DE DATOS NOSQL 3DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA Facebook Google Amazon Yabblr Bet Ha Bracha CouchDB Bases de datos NoSQL
  • 4. MongoDB CouchDB ¿CUÁL BASE DE DATOS SELECCIONAR? 4DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA Características Funcionalidades Necesidades Características MongoDB 2.0 CouchDB 1.0.1 Lenguaje C++ Erlang Objetos Colecciones, documentos(JSON) Documentos(JSON), vistas Actualización En el lugar MVCC Acceso TCP/IP HTTP Archivos GridFS Attachments
  • 5. CAPACIDAD DE MODELACIÓN DE DATOS Y CONSULTA 5DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA •Capacidad de modelación. Christian Kvalheim presenta: “Sample e-commerce system with MongoDB”. •Capacidad de consulta: Ambas soportan funciones Map/Reduce, o especificidades de las API de acceso a las BD.
  • 6. CAPACIDAD DE REPLICACIÓN Y FRAGMENTACIÓN 6DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA •Replicación. -MongoDB permite la replicación maestro-esclavo. -CouchDB permite la replicación maestro-maestro, contando con un algoritmo de resolución de conflictos para evitar los problemas con la consistencia de la información. •Fragmentación : -MongoDB permite la fragmentación nativa de datos mediante el mecanismo autoshardind con los llamados Shard Keys. -CouchDB, no posee uno nativo de fragmentación, pero se puede lograr mediante aplicaciones intermediarias o utilizando el mecanismo de Map/Reduce o filtros.
  • 7. TIEMPOS DE RESPUESTA EN «INSERCIÓN Y SELECCIÓN DE DOCUMENTOS» 7DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA 0 0.1 0.2 0.3 0.4 10 40 70 100 Segundos Usuarios MongoDB (100 doc) 0 20 40 60 80 10 40 70 100 Segundos Usuarios CouchDB (100 doc) 0 0.002 0.004 0.006 0.008 10 40 70 100 Segundos Usuarios find_one()-MongoDB (100000 doc) 0 0.02 0.04 0.06 0.08 10 40 70 100 Segundos Usuarios get()-CouchDB (100000 doc) Experimento: Python | Pentium 4 a 3.00 GHz | 2 GB de RAM | Ubuntu 11.10 HD a 7200 rpm
  • 8. TIEMPOS DE RESPUESTA EN «CONSULTAS MAP/REDUCE Y ENVÍO DE ARCHIVOS» 8DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA 0.10 0.11 0.11 0.12 0.12 0.13 0.13 0.14 10 40 70 100 Map/Reduce CouchDB (100 000 doc) 0 5 10 15 20 25 30 35 10 40 70 100 Map/Reduce MongoDB(100000 doc) 0 5 10 15 20 25 30 35 40 45 10 40 70 100 Segundos Usuarios 0 10 20 30 40 50 60 70 80 10 40 70 100 Segundos Usuarios Envío de archivos Experimento: Python | Pentium 4 a 3.00 GHz | 2 GB de RAM | Ubuntu 11.10 HD a 7200 rpm
  • 9. CONCLUSIONES  Las aplicaciones de comercio electrónico están tendiendo al uso de bases de datos NoSQL orientadas a documentos.  En la comparación de dichas bases de datos se concluyó que:  Tienen características similares respecto a la capacidad de modelación y consulta, no siendo así en la fragmentación y replicación.  Las velocidades de inserción y selección de un documento en MongoDB son superiores a las de CouchDB.  Mientras que en las peticiones con funciones Map/Reduce para la selección de varios documentos CouchDB se comporta mejor. 9DATEC, UNIVERSIDAD DE LAS CIENCIAS INFORMÁTICAS,CUBA