Bases de datos NoSQL orientadas a documentos

2,690 views

Published on

Bases de datos NoSQL orientadas a documentos
detallando en particularidades de mongoDB y CouchDB

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,690
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
45
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Bases de datos NoSQL orientadas a documentos

  1. 1. Bases de datos NoSQL Orientadas a documentos Anthony R. Sotolongo León asotolongo@uci.cu
  2. 2. Sumario • • • • Introducción a BDs orientadas a documentos. Teorema CAP MongoDB y CouchDB. Modelación con NoSQL- orientadas a documentos. • Proyectos relacionados. • Artículos relacionados • Documentación relacionada.
  3. 3. ¿Qué son las BDs- NoSQL orientada a documentos? • Almacena la información en pares(KeyValue) • Almacenan documentos!!! – JSON { "_id": "doc#", “attributeN”:”valor”} • Se describen ellos mismo(libres de esquemas). • Los documentos se aproxima a las filas de las tablas de BD-Relacionales
  4. 4. Algunas… ravendb
  5. 5. Teorema CAP • Consistency : Todos los clientes ven la misma versión de los datos • Availability: Todos los clientes pueden acceder a alguna versión de los datos(en tiempo adecuado) • Partition tolerance: Los datos pueden estar particionados en varios servidores y si alguno cae sigue funcionando el sistema
  6. 6. NoSQL-orientadas a documentos en CAP C Sistemas Relacionales P A
  7. 7. Language C++ Object Store Collection, Documents concurrency Map/reduce support Replication interface Store Files Write in place Yes Erlang Documents, Views MVCC Yes Master-Slave TCP/IP GridFS Master -Master HTTP Attachments
  8. 8. Almacenamiento de objetos Collections Function document document document document V IEWS document document document document ensureIndex(Atributo) Índices
  9. 9. Concurrencia Function Collections document document document document V IEWS document document document document UPDATE
  10. 10. Concurrencia Function Collections document document document document V IEWS document document document document UPDATE UPDATE
  11. 11. Concurrencia Function Collections document document document document V IEWS document document document document document UPDATE UPDATE _rev
  12. 12. Map/Reduce function() { if ( this.contenido==‘HOLA MUNDO’ ) emit(this.contenido,this.titulo} function(doc) { if(doc.contenido==‘HOLA MUNDO’) emit(null,{doc.titulo,doc.contenido} );}
  13. 13. Replicación Maestro-esclavo Replica-Set Shared Mode Maestro-Maestro -Filtros (funciones)
  14. 14. Estudio del comportamiento con concurrencia Escritura 100 docs
  15. 15. Estudio del comportamiento con concurrencia lectura 100000 docs
  16. 16. Estudio del comportamiento con concurrencia Lectura - Map/Reduce100000 docs
  17. 17. Estudio del comportamiento con concurrencia Subida de archivos- 9.62 MB
  18. 18. ¿Se trata de?
  19. 19. ¿Quienes los utilizan? Métricas y trazas de sus app Replicación
  20. 20. ¿Quienes los utilizan en la UCI? Naire
  21. 21. Modelación con NoSQL orientado a documentos • Desnormalización • Agregación (nested entities)
  22. 22. E-Commerce System with MongoDB • Christian Kvalheim, Node.js driver developer. Categoría Producto Modelo relacional Carro_compra Usuarios
  23. 23. Ejemplo E-Commerce MongoDB • Christian Kvalheim, Node.js driver developer. Colección-productos Modelo MongoDB Colección-carro_compra {Id_product, name, details(weight, height) , price , quantity, Categorie} Desnormalizacion Agregación { id_user, Status, quantity: 2, total: 2000, products: [] }
  24. 24. Proyectos… • CouchBase : Couchdb+Memcached • BigCouch: Couchdb + Cluster • Humongous: Standalone Mongo Browser for Ruby, using HTML5. • MonjaDB: MongoDB GUI client.
  25. 25. Artículos … • From ISIS to CouchDB: Databases and Data Models for Bibliographic Records. • Moving Towards Non-Relational Databases
  26. 26. Documentación
  27. 27. Bases de datos NoSQL Orientadas a documentos Anthony R. Sotolongo León asotolongo@uci.cu

×