SlideShare uma empresa Scribd logo
1 de 9
Baixar para ler offline
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

Mais conteúdo relacionado

Mais procurados

Preparación de la propuesta de sistemas
Preparación de la propuesta de sistemasPreparación de la propuesta de sistemas
Preparación de la propuesta de sistemasEdsel Barbosa González
 
Deteccion Y Recuperacion De Un Interbloqueo
Deteccion Y Recuperacion De Un InterbloqueoDeteccion Y Recuperacion De Un Interbloqueo
Deteccion Y Recuperacion De Un InterbloqueoTecnologico de pinotepa
 
Diseño de entraday_salida
Diseño de entraday_salidaDiseño de entraday_salida
Diseño de entraday_salidaJorge Garcia
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidosJaziel Torres
 
^.^ Twitter como aplicación distribuida ^.^
^.^ Twitter como aplicación distribuida ^.^^.^ Twitter como aplicación distribuida ^.^
^.^ Twitter como aplicación distribuida ^.^Brenda Urbano
 
Ciclo de vida de un sistema de información
Ciclo de vida de un sistema de informaciónCiclo de vida de un sistema de información
Ciclo de vida de un sistema de informaciónJuan Pablo Bustos Thames
 
20 tips para escribir stored procedures en sql server
20 tips para escribir stored procedures en sql server20 tips para escribir stored procedures en sql server
20 tips para escribir stored procedures en sql server774angito
 
EJERCICIOS DE SQLl
EJERCICIOS DE SQLlEJERCICIOS DE SQLl
EJERCICIOS DE SQLlAndresSuarez
 
Vistas arquitectonicas. _Ing Software
Vistas arquitectonicas. _Ing SoftwareVistas arquitectonicas. _Ing Software
Vistas arquitectonicas. _Ing SoftwareRoberth Loaiza
 
Resumen documental código linux
Resumen  documental código linuxResumen  documental código linux
Resumen documental código linuxequipo21
 
Modelos de Base de Datos
Modelos de Base de DatosModelos de Base de Datos
Modelos de Base de DatosAxel Mérida
 
Esquema de fragmentación y Distribucion de BDD
Esquema de fragmentación y Distribucion de BDDEsquema de fragmentación y Distribucion de BDD
Esquema de fragmentación y Distribucion de BDDBlanca Parra
 

Mais procurados (13)

Preparación de la propuesta de sistemas
Preparación de la propuesta de sistemasPreparación de la propuesta de sistemas
Preparación de la propuesta de sistemas
 
Deteccion Y Recuperacion De Un Interbloqueo
Deteccion Y Recuperacion De Un InterbloqueoDeteccion Y Recuperacion De Un Interbloqueo
Deteccion Y Recuperacion De Un Interbloqueo
 
Diseño de entraday_salida
Diseño de entraday_salidaDiseño de entraday_salida
Diseño de entraday_salida
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
^.^ Twitter como aplicación distribuida ^.^
^.^ Twitter como aplicación distribuida ^.^^.^ Twitter como aplicación distribuida ^.^
^.^ Twitter como aplicación distribuida ^.^
 
Ciclo de vida de un sistema de información
Ciclo de vida de un sistema de informaciónCiclo de vida de un sistema de información
Ciclo de vida de un sistema de información
 
20 tips para escribir stored procedures en sql server
20 tips para escribir stored procedures en sql server20 tips para escribir stored procedures en sql server
20 tips para escribir stored procedures en sql server
 
EJERCICIOS DE SQLl
EJERCICIOS DE SQLlEJERCICIOS DE SQLl
EJERCICIOS DE SQLl
 
Vistas arquitectonicas. _Ing Software
Vistas arquitectonicas. _Ing SoftwareVistas arquitectonicas. _Ing Software
Vistas arquitectonicas. _Ing Software
 
Almacen de datos
Almacen de datosAlmacen de datos
Almacen de datos
 
Resumen documental código linux
Resumen  documental código linuxResumen  documental código linux
Resumen documental código linux
 
Modelos de Base de Datos
Modelos de Base de DatosModelos de Base de Datos
Modelos de Base de Datos
 
Esquema de fragmentación y Distribucion de BDD
Esquema de fragmentación y Distribucion de BDDEsquema de fragmentación y Distribucion de BDD
Esquema de fragmentación y Distribucion de BDD
 

Semelhante 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
 

Semelhante 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
 

Mais 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
 

Mais 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