enabling large-scale storage in sensor networks with the coffee file system ispn 2009 lawrence
TRANSCRIPT
![Page 1: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/1.jpg)
Enabling Large-Scale Storage in Sensor Networks with the Coffee File
System
ISPN 2009Lawrence
![Page 2: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/2.jpg)
Introduction
Motivation Existing storage systems access the flash
memory directly and ad hoc, or use too much RAM to handle large flash memories.
Storage abstractions
Meet the need for a generic, high speed, flash-based file system that is feasible for a wide rage of sensor devices.
![Page 3: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/3.jpg)
Storage In Sensor Network
Storage Centricity From communication-centric to storage-
centric Batching data for saving energy Delay-tolerant v.s. delay-sensitive(ex.
fire alarm) Storage-centric sensor net require
storage facilities.
![Page 4: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/4.jpg)
Storage In Sensor Network(Cont.)
Using Storage as Virtual Memory Use the flash as swap area. VM requires faster storage systems. Require storage manage application:
1. Wear leveling2. Garbage collection3. Space allocation
In this paper, there is a storage abstraction allocation that suit for above requirements.
![Page 5: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/5.jpg)
Storage In Sensor Network(Cont.)
Flash memory semantics Some part (called erase sectors) must
be erased before overwriting.
Flash memory: 1.NOR flash (good for read)
2.NAND flash (good for storage)
![Page 6: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/6.jpg)
COFFEE
Coffee is a portable, high-speed file system for sensor device equipped with flash memories.
Micro logs to handle file modifications.
Use a small footprint: each open file O(1) RAM.
![Page 7: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/7.jpg)
COFFEE (Cont.)
Design principles Memory and code size constraints. Small memory footprints-regardless
of the file sizes. Rule:
1.divided into erase sectors of size 2.Erease sets all bits to 1 3.Programming switches a subset of the
bits in a page from 1 to 0.
![Page 8: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/8.jpg)
COFFEE (Cont.)
![Page 9: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/9.jpg)
COFFEE (Cont.)
Page Structure
A file is stored as a contiguous group Page Allocation Algorithm: first-fit policy.
![Page 10: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/10.jpg)
Minimizing metadata in the RAM (metadata in first page of file)
![Page 11: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/11.jpg)
Locating File File cache for locations. If not in cache => cache miss(sequentially scan)
![Page 12: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/12.jpg)
![Page 13: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/13.jpg)
Garbage Collection
![Page 14: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/14.jpg)
Wear Leveling Policy What is wear leveling Erase too much -> memory corrupt Method: delay garbage collection until a
space reservation request cannot be fulfilled.
![Page 15: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/15.jpg)
Evaluation
![Page 16: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/16.jpg)
![Page 17: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/17.jpg)
![Page 18: Enabling Large-Scale Storage in Sensor Networks with the Coffee File System ISPN 2009 Lawrence](https://reader036.vdocuments.net/reader036/viewer/2022062408/56649efd5503460f94c10bee/html5/thumbnails/18.jpg)
Conclusion
Coffee’s high throughput and low latency make it a suitable underlying layer for storage abstractions.