SlideShare a Scribd company logo
1

Big Memory File System

Mahesh Gupta
DOS Lab, IIT Madras
Contents
 Introduction
 Traditional System Architecture

 Survey on Big Memory System
 Survey
 Violin memory system

 Existing Systems
 Redis
 tmpfs

 In Memory File System
 High level architecture
 Functional Requirements
 Various Experiments that can be done

 References

2
3

Introduction
Traditional System Architecture
Processing Unit

L1 Cache
L2Cache
L3 Cache

Main Memory

Disk

Disk

4
Issues

5

 Access to disk is quite costly : almost 1000 times that of
main memory access
[source: OS, Galvin]
 Disk access is handled quite separately compared to main
memory access. Process is blocked and pushed into device
queue.
 Data needs to be moved constantly to & from disk for using
small memory to execute large process.
 As number of process increases, some of process needs to
be swapped out to accommodate new processes.
6

Impact of Big Memory Systems
7

Survey
 According to a study by Aberdeen group, “In-memory
Computing: Lifting the burden of Big Data”, storing the
data in flash memory while processing makes huge impact.
 Various businesses require real world analytics on very large
amount of data, which is not feasible in traditional disk based
storage.
Statistics

8

 Data Stored in In-memory can be processed at the rate of
1200 TB / hour whereas On-disk data can be processed at
the rate of 3.2 TB / hour.
~ 350 times faster
 Average response time for query was 42 seconds (inmemory data) vs 75 minutes (disk data)
~ 100 times faster
 Impact: Results obtained in real time. Quality of result is
high. Real world value is very high.
Violin Memory

9

 Violin Memory, manufactures large scale flash memory
array which could be added to the board directly giving very
high capacity In-memory.
 Having very high in-memory gives rise to a system where
MM capacity would be as good as disk capacity and hence
entire data while reading can be brought to MM and need not
be accessed again and again.
 Targeted Applications:
 Faster Big data analytics
 Accelerating enterprise applications
10

The trend
 Moving Desktop systems from disk based to diskless
system where entire data will be stored on cloud, and
systems can simply access them over network.
 With very high processing speed available, disk access
becomes the only bottleneck larger tasks.
 Very large Memory
performance.

can

help

to

optimize

system
11

Existing Systems
12

REmote DIctionary Server (Redis)
 In memory key-value store, text based protocol.
 Idea: To provide a efficient data storage in Memory and access without
accessing the disk.
 Designed as DSL to work on simple to complex data structure
 Uses Virtualization to handle data larger than main memory. (Based on
the idea to give similar performance with / without virtual memory)
 Asynchronous in nature (Memory to Disk transfer)
 Used by Stack Overflow, Github
13

tmpfs : virtual memory file system
 Virtual memory File system by Sun Microsystem
 Idea: to design file system for short lived small sized files
which do not reside on disk. And give performance of access
to RAM

 Memory based file system, uses page cache instead of RAM
to store data.
14

In-Memory File System for OS
“To modify Memory Management Unit (MMU) to be
able to take advantage of Big In-memory and improving system
performance.”
15

Processing Unit

Existing Architecture

Modified Architecture 1

Modified Architecture 2

Memory Management Unit

Main Memory

Disk

Memory
Management Unit

Storage

Memory File
System

Storage
Functional Requirements

16

 Newly designed system should not
 Replace existing file system.
 Should be flexible to support any changes done at the storage
side so that later disk can be replaced by network storage.

 Should minimize access to the storage unit.
 Access to small, large and very large files should take roughly
same amount of time. (transfer of data to/from memory should be
done efficiently)
Experiments

17

 To see if storage unit can be replaced by storage over
network, and architectural modification required. (to support
thin client)
 To see if memory unit can support database semantics for
querying or if version control semantics can be implemented.
 To see how the system can be designed to support
concurrent access.
 Network server can act as a master while systems sharing
resource can act as slaves.
18

References
 In-Memory Analytics:
http://spotfire.tibco.com/~/media/contentcenter/articles/aberdeen-in-memory-analytics-for-big-data.pdf
 Violin Memory: http://www.violin-memory.com/
 Redis:
 Slides: http://nosqlberlin.de/slides/NoSQLBerlin-Redis.pdf
 Internal VM: http://redis.io/topics/internals-vm

 tmpfs Virtual memory file system:
http://www.cs.rit.edu/~vcss544/tmpfs.pdf

More Related Content

What's hot

LizardFS-WhitePaper-Eng-v4.0 (1)
LizardFS-WhitePaper-Eng-v4.0 (1)LizardFS-WhitePaper-Eng-v4.0 (1)
LizardFS-WhitePaper-Eng-v4.0 (1)
Pekka Männistö
 
Software Defined storage
Software Defined storageSoftware Defined storage
Software Defined storage
Kirillos Akram
 

What's hot (20)

Introduction to Storage technologies
Introduction to Storage technologiesIntroduction to Storage technologies
Introduction to Storage technologies
 
LizardFS-WhitePaper-Eng-v4.0 (1)
LizardFS-WhitePaper-Eng-v4.0 (1)LizardFS-WhitePaper-Eng-v4.0 (1)
LizardFS-WhitePaper-Eng-v4.0 (1)
 
Mass storage systemsos
Mass storage systemsosMass storage systemsos
Mass storage systemsos
 
ch11
ch11ch11
ch11
 
GPFS Solution Brief
GPFS Solution BriefGPFS Solution Brief
GPFS Solution Brief
 
Google Bigtable paper presentation
Google Bigtable paper presentationGoogle Bigtable paper presentation
Google Bigtable paper presentation
 
In-Memory Computing: Myths and Facts
In-Memory Computing: Myths and FactsIn-Memory Computing: Myths and Facts
In-Memory Computing: Myths and Facts
 
Swapping | Computer Science
Swapping | Computer ScienceSwapping | Computer Science
Swapping | Computer Science
 
Oaklands college: Protecting your data.
Oaklands college: Protecting your data.Oaklands college: Protecting your data.
Oaklands college: Protecting your data.
 
Swap-space Management
Swap-space ManagementSwap-space Management
Swap-space Management
 
Basics of storage Technology
Basics of storage TechnologyBasics of storage Technology
Basics of storage Technology
 
Scaling Up vs. Scaling-out
Scaling Up vs. Scaling-outScaling Up vs. Scaling-out
Scaling Up vs. Scaling-out
 
The Google File System (GFS)
The Google File System (GFS)The Google File System (GFS)
The Google File System (GFS)
 
Google Bigtable Paper Presentation
Google Bigtable Paper PresentationGoogle Bigtable Paper Presentation
Google Bigtable Paper Presentation
 
In-Memory Computing: How, Why? and common Patterns
In-Memory Computing: How, Why? and common PatternsIn-Memory Computing: How, Why? and common Patterns
In-Memory Computing: How, Why? and common Patterns
 
Gpfs introandsetup
Gpfs introandsetupGpfs introandsetup
Gpfs introandsetup
 
Software Defined storage
Software Defined storageSoftware Defined storage
Software Defined storage
 
Qnap nas ts serie x71u-catalogo
Qnap nas ts serie x71u-catalogoQnap nas ts serie x71u-catalogo
Qnap nas ts serie x71u-catalogo
 
HP Storage Backup (RDX) presentation
HP Storage Backup (RDX) presentation HP Storage Backup (RDX) presentation
HP Storage Backup (RDX) presentation
 
Storage Management
Storage ManagementStorage Management
Storage Management
 

Viewers also liked

Leadership style
Leadership styleLeadership style
Leadership style
sristi1992
 
Intellectual property
Intellectual propertyIntellectual property
Intellectual property
RexNige
 
Ppt06 little rabbit 2010
Ppt06 little rabbit 2010Ppt06 little rabbit 2010
Ppt06 little rabbit 2010
luciamontoliu
 
Background Check & Due Diligence Services - Arch360 Group
Background Check & Due Diligence Services - Arch360 GroupBackground Check & Due Diligence Services - Arch360 Group
Background Check & Due Diligence Services - Arch360 Group
Gabriela Coldea, CFE
 
NET+ Subnetting
NET+ SubnettingNET+ Subnetting
NET+ Subnetting
Bernado
 
Xcode开发员入门导引(简体中文版)
Xcode开发员入门导引(简体中文版)Xcode开发员入门导引(简体中文版)
Xcode开发员入门导引(简体中文版)
babyyellow li
 
The room of my dream
The room of my dreamThe room of my dream
The room of my dream
guest418635
 
Instructional Strategies
Instructional StrategiesInstructional Strategies
Instructional Strategies
gerikenglish
 

Viewers also liked (20)

Leadership style
Leadership styleLeadership style
Leadership style
 
Jyothi reddy
Jyothi reddyJyothi reddy
Jyothi reddy
 
Arbitration & Conciliation Act 1996 (amdt) ordinance
Arbitration & Conciliation Act 1996 (amdt) ordinanceArbitration & Conciliation Act 1996 (amdt) ordinance
Arbitration & Conciliation Act 1996 (amdt) ordinance
 
Redesigning & integrating bluetooth 3
Redesigning & integrating bluetooth 3Redesigning & integrating bluetooth 3
Redesigning & integrating bluetooth 3
 
Peggy and mummy
Peggy and mummyPeggy and mummy
Peggy and mummy
 
Intellectual property
Intellectual propertyIntellectual property
Intellectual property
 
Family Tree
Family TreeFamily Tree
Family Tree
 
Social Media Best Practices OMMA Global Case Study
Social Media Best Practices OMMA Global Case StudySocial Media Best Practices OMMA Global Case Study
Social Media Best Practices OMMA Global Case Study
 
Ppt06 little rabbit 2010
Ppt06 little rabbit 2010Ppt06 little rabbit 2010
Ppt06 little rabbit 2010
 
Winter p4
Winter p4Winter p4
Winter p4
 
Background Check & Due Diligence Services - Arch360 Group
Background Check & Due Diligence Services - Arch360 GroupBackground Check & Due Diligence Services - Arch360 Group
Background Check & Due Diligence Services - Arch360 Group
 
Open Source Presentation
Open Source PresentationOpen Source Presentation
Open Source Presentation
 
Meals
MealsMeals
Meals
 
NET+ Subnetting
NET+ SubnettingNET+ Subnetting
NET+ Subnetting
 
Xcode开发员入门导引(简体中文版)
Xcode开发员入门导引(简体中文版)Xcode开发员入门导引(简体中文版)
Xcode开发员入门导引(简体中文版)
 
Christmas p3
Christmas p3Christmas p3
Christmas p3
 
The room of my dream
The room of my dreamThe room of my dream
The room of my dream
 
Sp%20 pendidikan%20islam%20kbsm
Sp%20 pendidikan%20islam%20kbsmSp%20 pendidikan%20islam%20kbsm
Sp%20 pendidikan%20islam%20kbsm
 
Spring
SpringSpring
Spring
 
Instructional Strategies
Instructional StrategiesInstructional Strategies
Instructional Strategies
 

Similar to Big in memory file system

[IC Manage] Workspace Acceleration & Network Storage Reduction
[IC Manage] Workspace Acceleration & Network Storage Reduction[IC Manage] Workspace Acceleration & Network Storage Reduction
[IC Manage] Workspace Acceleration & Network Storage Reduction
Perforce
 
03 Data Recovery - Notes
03 Data Recovery - Notes03 Data Recovery - Notes
03 Data Recovery - Notes
Kranthi
 
Virtual Memory vs Cache Memory
Virtual Memory vs Cache MemoryVirtual Memory vs Cache Memory
Virtual Memory vs Cache Memory
Ashik Iqbal
 
TSS03135-USEN-00_HR
TSS03135-USEN-00_HRTSS03135-USEN-00_HR
TSS03135-USEN-00_HR
Ed Ahl
 

Similar to Big in memory file system (20)

Unlocking Efficiency: B-Trees in Disk Storage Management.pptx
Unlocking Efficiency: B-Trees in Disk Storage Management.pptxUnlocking Efficiency: B-Trees in Disk Storage Management.pptx
Unlocking Efficiency: B-Trees in Disk Storage Management.pptx
 
Performance Tuning
Performance TuningPerformance Tuning
Performance Tuning
 
Positioning IBM Flex System 16 Gb Fibre Channel Fabric for Storage-Intensive ...
Positioning IBM Flex System 16 Gb Fibre Channel Fabric for Storage-Intensive ...Positioning IBM Flex System 16 Gb Fibre Channel Fabric for Storage-Intensive ...
Positioning IBM Flex System 16 Gb Fibre Channel Fabric for Storage-Intensive ...
 
Introducing StorNext5 and Lattus
Introducing StorNext5 and LattusIntroducing StorNext5 and Lattus
Introducing StorNext5 and Lattus
 
Why is Virtualization Creating Storage Sprawl? By Storage Switzerland
Why is Virtualization Creating Storage Sprawl? By Storage SwitzerlandWhy is Virtualization Creating Storage Sprawl? By Storage Switzerland
Why is Virtualization Creating Storage Sprawl? By Storage Switzerland
 
storage-systems.pptx
storage-systems.pptxstorage-systems.pptx
storage-systems.pptx
 
Distributed virtual disk storage system
Distributed virtual disk storage systemDistributed virtual disk storage system
Distributed virtual disk storage system
 
11.distributed virtual disk storage system
11.distributed virtual disk storage system11.distributed virtual disk storage system
11.distributed virtual disk storage system
 
[IC Manage] Workspace Acceleration & Network Storage Reduction
[IC Manage] Workspace Acceleration & Network Storage Reduction[IC Manage] Workspace Acceleration & Network Storage Reduction
[IC Manage] Workspace Acceleration & Network Storage Reduction
 
High performance storage solutions definition & more
High performance storage solutions definition & moreHigh performance storage solutions definition & more
High performance storage solutions definition & more
 
Lesson 8 Memory Storage And Management
Lesson 8 Memory Storage And ManagementLesson 8 Memory Storage And Management
Lesson 8 Memory Storage And Management
 
Unit-1 Introduction to Big Data.pptx
Unit-1 Introduction to Big Data.pptxUnit-1 Introduction to Big Data.pptx
Unit-1 Introduction to Big Data.pptx
 
In-Memory Big Data Analytics
In-Memory Big Data AnalyticsIn-Memory Big Data Analytics
In-Memory Big Data Analytics
 
In memory big data management and processing a survey
In memory big data management and processing a surveyIn memory big data management and processing a survey
In memory big data management and processing a survey
 
Add Memory, Improve Performance, and Lower Costs with IBM MAX5 Technology
Add Memory, Improve Performance, and Lower Costs with IBM MAX5 TechnologyAdd Memory, Improve Performance, and Lower Costs with IBM MAX5 Technology
Add Memory, Improve Performance, and Lower Costs with IBM MAX5 Technology
 
03 Data Recovery - Notes
03 Data Recovery - Notes03 Data Recovery - Notes
03 Data Recovery - Notes
 
Gfs sosp2003
Gfs sosp2003Gfs sosp2003
Gfs sosp2003
 
Gfs
GfsGfs
Gfs
 
Virtual Memory vs Cache Memory
Virtual Memory vs Cache MemoryVirtual Memory vs Cache Memory
Virtual Memory vs Cache Memory
 
TSS03135-USEN-00_HR
TSS03135-USEN-00_HRTSS03135-USEN-00_HR
TSS03135-USEN-00_HR
 

Recently uploaded

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Recently uploaded (20)

ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
The architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdfThe architecture of Generative AI for enterprises.pdf
The architecture of Generative AI for enterprises.pdf
 
Intelligent Gimbal FINAL PAPER Engineering.pdf
Intelligent Gimbal FINAL PAPER Engineering.pdfIntelligent Gimbal FINAL PAPER Engineering.pdf
Intelligent Gimbal FINAL PAPER Engineering.pdf
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Strategic AI Integration in Engineering Teams
Strategic AI Integration in Engineering TeamsStrategic AI Integration in Engineering Teams
Strategic AI Integration in Engineering Teams
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Connecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAKConnecting the Dots in Product Design at KAYAK
Connecting the Dots in Product Design at KAYAK
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
Intro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджераIntro in Product Management - Коротко про професію продакт менеджера
Intro in Product Management - Коротко про професію продакт менеджера
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 

Big in memory file system

  • 1. 1 Big Memory File System Mahesh Gupta DOS Lab, IIT Madras
  • 2. Contents  Introduction  Traditional System Architecture  Survey on Big Memory System  Survey  Violin memory system  Existing Systems  Redis  tmpfs  In Memory File System  High level architecture  Functional Requirements  Various Experiments that can be done  References 2
  • 4. Traditional System Architecture Processing Unit L1 Cache L2Cache L3 Cache Main Memory Disk Disk 4
  • 5. Issues 5  Access to disk is quite costly : almost 1000 times that of main memory access [source: OS, Galvin]  Disk access is handled quite separately compared to main memory access. Process is blocked and pushed into device queue.  Data needs to be moved constantly to & from disk for using small memory to execute large process.  As number of process increases, some of process needs to be swapped out to accommodate new processes.
  • 6. 6 Impact of Big Memory Systems
  • 7. 7 Survey  According to a study by Aberdeen group, “In-memory Computing: Lifting the burden of Big Data”, storing the data in flash memory while processing makes huge impact.  Various businesses require real world analytics on very large amount of data, which is not feasible in traditional disk based storage.
  • 8. Statistics 8  Data Stored in In-memory can be processed at the rate of 1200 TB / hour whereas On-disk data can be processed at the rate of 3.2 TB / hour. ~ 350 times faster  Average response time for query was 42 seconds (inmemory data) vs 75 minutes (disk data) ~ 100 times faster  Impact: Results obtained in real time. Quality of result is high. Real world value is very high.
  • 9. Violin Memory 9  Violin Memory, manufactures large scale flash memory array which could be added to the board directly giving very high capacity In-memory.  Having very high in-memory gives rise to a system where MM capacity would be as good as disk capacity and hence entire data while reading can be brought to MM and need not be accessed again and again.  Targeted Applications:  Faster Big data analytics  Accelerating enterprise applications
  • 10. 10 The trend  Moving Desktop systems from disk based to diskless system where entire data will be stored on cloud, and systems can simply access them over network.  With very high processing speed available, disk access becomes the only bottleneck larger tasks.  Very large Memory performance. can help to optimize system
  • 12. 12 REmote DIctionary Server (Redis)  In memory key-value store, text based protocol.  Idea: To provide a efficient data storage in Memory and access without accessing the disk.  Designed as DSL to work on simple to complex data structure  Uses Virtualization to handle data larger than main memory. (Based on the idea to give similar performance with / without virtual memory)  Asynchronous in nature (Memory to Disk transfer)  Used by Stack Overflow, Github
  • 13. 13 tmpfs : virtual memory file system  Virtual memory File system by Sun Microsystem  Idea: to design file system for short lived small sized files which do not reside on disk. And give performance of access to RAM  Memory based file system, uses page cache instead of RAM to store data.
  • 14. 14 In-Memory File System for OS “To modify Memory Management Unit (MMU) to be able to take advantage of Big In-memory and improving system performance.”
  • 15. 15 Processing Unit Existing Architecture Modified Architecture 1 Modified Architecture 2 Memory Management Unit Main Memory Disk Memory Management Unit Storage Memory File System Storage
  • 16. Functional Requirements 16  Newly designed system should not  Replace existing file system.  Should be flexible to support any changes done at the storage side so that later disk can be replaced by network storage.  Should minimize access to the storage unit.  Access to small, large and very large files should take roughly same amount of time. (transfer of data to/from memory should be done efficiently)
  • 17. Experiments 17  To see if storage unit can be replaced by storage over network, and architectural modification required. (to support thin client)  To see if memory unit can support database semantics for querying or if version control semantics can be implemented.  To see how the system can be designed to support concurrent access.  Network server can act as a master while systems sharing resource can act as slaves.
  • 18. 18 References  In-Memory Analytics: http://spotfire.tibco.com/~/media/contentcenter/articles/aberdeen-in-memory-analytics-for-big-data.pdf  Violin Memory: http://www.violin-memory.com/  Redis:  Slides: http://nosqlberlin.de/slides/NoSQLBerlin-Redis.pdf  Internal VM: http://redis.io/topics/internals-vm  tmpfs Virtual memory file system: http://www.cs.rit.edu/~vcss544/tmpfs.pdf