SlideShare a Scribd company logo
1 of 31
Download to read offline
IN DEEP
                              @flaper87
domingo 2 de octubre de 11
MEMORY MAPPED FILES



domingo 2 de octubre de 11
MEMORY MAPPED FILES
                           IT EATS AS MUCH
                            AS IT CAN FIND

domingo 2 de octubre de 11
MEMORY MAPPED FILES
                           IT EATS AS MUCH
                            AS IT CAN FIND
                        LRU’d VIRTUAL MEMORY
domingo 2 de octubre de 11
AS IT CAN FIND
                        LRU’d VIRTUAL MEMORY

                 SO THAT’S WHERE
                 YOUR MEMORY IS
domingo 2 de octubre de 11
SO THAT’S WHERE
                 YOUR MEMORY IS
                   WHAT ABOUT
                    THE LOCK?
domingo 2 de octubre de 11
READERS-WRITER LOCK




domingo 2 de octubre de 11
READERS-WRITER LOCK
                             IF LOCKED THEN EQUE


domingo 2 de octubre de 11
READERS-WRITER LOCK
                             IF LOCKED THEN EQUE
                             PER-COLLECTION LOCK

domingo 2 de octubre de 11
CANNOT BE CHANGED




domingo 2 de octubre de 11
CANNOT BE CHANGED
                             CAN BE INTERPRETED


domingo 2 de octubre de 11
CANNOT BE CHANGED
                             CAN BE INTERPRETED
                             ONE INDEX AT A TIME

domingo 2 de octubre de 11
YES, IT USES
                              A B-TREE!
                             WHAT ABOUT
domingo 2 de octubre de 11
YES, IT USES
                              A B-TREE!
                             WHAT ABOUT
                              THE CPU?
domingo 2 de octubre de 11
A B-TREE!
                             WHAT ABOUT
                              THE CPU?
                           If you’re telling it
                         something, it’ll use one
domingo 2 de octubre de 11
WHAT ABOUT
                              THE CPU?
                               If you’re asking it
                             something, it’ll use *
domingo 2 de octubre de 11
WHAT ABOUT
                              THE CPU?
                             If there’s JS in there,
                              it’ll keep using one
domingo 2 de octubre de 11
If there’s JS in there,
                              it’ll keep using one

                      MULTITHREADED
                      MAP/REDUCE?
domingo 2 de octubre de 11
NOT POSSIBLE
                             (until V8 is finalized)




domingo 2 de octubre de 11
NOT POSSIBLE
                             (until V8 is finalized)

                               LOCKS INVOLVED:


domingo 2 de octubre de 11
NOT POSSIBLE
                             (until V8 is finalized)

                               LOCKS INVOLVED:
                                READ

domingo 2 de octubre de 11
NOT POSSIBLE
                             (until V8 is finalized)

                               LOCKS INVOLVED:
                                READ MAP

domingo 2 de octubre de 11
NOT POSSIBLE
                             (until V8 is finalized)

                               LOCKS INVOLVED:
                                READ MAP + EMIT

domingo 2 de octubre de 11
NOT POSSIBLE
                             (until V8 is finalized)

                               LOCKS INVOLVED:
                                READ MAP + EMIT
                                 REDUCE
domingo 2 de octubre de 11
NOT POSSIBLE
                             (until V8 is finalized)

                               LOCKS INVOLVED:
                                READ MAP + EMIT
                                 REDUCE WRITE
domingo 2 de octubre de 11
Sm, v8 or ?!?!

                              Scripting Interface


domingo 2 de octubre de 11
Sm, v8 or ?!?!

                              v8 is the way to go


domingo 2 de octubre de 11
Sm, v8 or ?!?!

                              Could it be Java?


domingo 2 de octubre de 11
Sm, v8 or ?!?!

                             It could also be Python


domingo 2 de octubre de 11
anks, 10gen!

                             Reach me on twitter: @flaper87
domingo 2 de octubre de 11
domingo 2 de octubre de 11

More Related Content

More from Flavio Percoco Premoli

More from Flavio Percoco Premoli (8)

Marconi: Queuing and Notification service for OpenStack
Marconi: Queuing and Notification service for OpenStackMarconi: Queuing and Notification service for OpenStack
Marconi: Queuing and Notification service for OpenStack
 
OpenStack: A python based IaaS provider
OpenStack: A python based IaaS providerOpenStack: A python based IaaS provider
OpenStack: A python based IaaS provider
 
Glance wants to go public
Glance wants to go publicGlance wants to go public
Glance wants to go public
 
Introduction, deployment and hybrid clouds
Introduction, deployment and hybrid cloudsIntroduction, deployment and hybrid clouds
Introduction, deployment and hybrid clouds
 
OpenStack: Community driven development, For Real!
OpenStack: Community driven development, For Real!OpenStack: Community driven development, For Real!
OpenStack: Community driven development, For Real!
 
Django Mongodb Engine
Django Mongodb EngineDjango Mongodb Engine
Django Mongodb Engine
 
When?, Why? and What? of MongoDB
When?, Why? and What? of MongoDBWhen?, Why? and What? of MongoDB
When?, Why? and What? of MongoDB
 
Aptspy
AptspyAptspy
Aptspy
 

Recently uploaded

certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaElizabethLpezSoto
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nóminacuellosameidy
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfJoseAlejandroPerezBa
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaYeimys Ch
 
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxPLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxhasbleidit
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdflauralizcano0319
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxCarolina Bujaico
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888ElianaValencia28
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosAlbanyMartinez7
 
PROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y masPROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y maslida630411
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024u20211198540
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfKarinaCambero3
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 

Recently uploaded (20)

certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestría
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nómina
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
 
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docxPLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
PLANEACION DE CLASES TEMA TIPOS DE FAMILIA.docx
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptx
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
Documentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos JuridicosDocumentacion Electrónica en Actos Juridicos
Documentacion Electrónica en Actos Juridicos
 
PROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y masPROYECCIÓN DE VISTAS planos de vistas y mas
PROYECCIÓN DE VISTAS planos de vistas y mas
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
Inteligencia Artificial. Matheo Hernandez Serrano USCO 2024
 
Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdf
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 

Memory Mapped Files, Readers-Writer Lock, B-Tree Indexes

  • 1. IN DEEP @flaper87 domingo 2 de octubre de 11
  • 2. MEMORY MAPPED FILES domingo 2 de octubre de 11
  • 3. MEMORY MAPPED FILES IT EATS AS MUCH AS IT CAN FIND domingo 2 de octubre de 11
  • 4. MEMORY MAPPED FILES IT EATS AS MUCH AS IT CAN FIND LRU’d VIRTUAL MEMORY domingo 2 de octubre de 11
  • 5. AS IT CAN FIND LRU’d VIRTUAL MEMORY SO THAT’S WHERE YOUR MEMORY IS domingo 2 de octubre de 11
  • 6. SO THAT’S WHERE YOUR MEMORY IS WHAT ABOUT THE LOCK? domingo 2 de octubre de 11
  • 7. READERS-WRITER LOCK domingo 2 de octubre de 11
  • 8. READERS-WRITER LOCK IF LOCKED THEN EQUE domingo 2 de octubre de 11
  • 9. READERS-WRITER LOCK IF LOCKED THEN EQUE PER-COLLECTION LOCK domingo 2 de octubre de 11
  • 10. CANNOT BE CHANGED domingo 2 de octubre de 11
  • 11. CANNOT BE CHANGED CAN BE INTERPRETED domingo 2 de octubre de 11
  • 12. CANNOT BE CHANGED CAN BE INTERPRETED ONE INDEX AT A TIME domingo 2 de octubre de 11
  • 13. YES, IT USES A B-TREE! WHAT ABOUT domingo 2 de octubre de 11
  • 14. YES, IT USES A B-TREE! WHAT ABOUT THE CPU? domingo 2 de octubre de 11
  • 15. A B-TREE! WHAT ABOUT THE CPU? If you’re telling it something, it’ll use one domingo 2 de octubre de 11
  • 16. WHAT ABOUT THE CPU? If you’re asking it something, it’ll use * domingo 2 de octubre de 11
  • 17. WHAT ABOUT THE CPU? If there’s JS in there, it’ll keep using one domingo 2 de octubre de 11
  • 18. If there’s JS in there, it’ll keep using one MULTITHREADED MAP/REDUCE? domingo 2 de octubre de 11
  • 19. NOT POSSIBLE (until V8 is finalized) domingo 2 de octubre de 11
  • 20. NOT POSSIBLE (until V8 is finalized) LOCKS INVOLVED: domingo 2 de octubre de 11
  • 21. NOT POSSIBLE (until V8 is finalized) LOCKS INVOLVED: READ domingo 2 de octubre de 11
  • 22. NOT POSSIBLE (until V8 is finalized) LOCKS INVOLVED: READ MAP domingo 2 de octubre de 11
  • 23. NOT POSSIBLE (until V8 is finalized) LOCKS INVOLVED: READ MAP + EMIT domingo 2 de octubre de 11
  • 24. NOT POSSIBLE (until V8 is finalized) LOCKS INVOLVED: READ MAP + EMIT REDUCE domingo 2 de octubre de 11
  • 25. NOT POSSIBLE (until V8 is finalized) LOCKS INVOLVED: READ MAP + EMIT REDUCE WRITE domingo 2 de octubre de 11
  • 26. Sm, v8 or ?!?! Scripting Interface domingo 2 de octubre de 11
  • 27. Sm, v8 or ?!?! v8 is the way to go domingo 2 de octubre de 11
  • 28. Sm, v8 or ?!?! Could it be Java? domingo 2 de octubre de 11
  • 29. Sm, v8 or ?!?! It could also be Python domingo 2 de octubre de 11
  • 30. anks, 10gen! Reach me on twitter: @flaper87 domingo 2 de octubre de 11
  • 31. domingo 2 de octubre de 11