Data Distribution Algorithms for Reliable. Reliable Parallel Storage on Flash Memories



Similar documents
Nasir Memon Polytechnic Institute of NYU

High-Performance SSD-Based RAID Storage. Madhukar Gunjan Chakhaiyar Product Test Architect

Sistemas Operativos: Input/Output Disks

Algorithms and Methods for Distributed Storage Networks 3. Solid State Disks Christian Schindelhauer

Solid State Drive (SSD) FAQ

Price/performance Modern Memory Hierarchy

Indexing on Solid State Drives based on Flash Memory

Disks and RAID. Profs. Bracy and Van Renesse. based on slides by Prof. Sirer

Understanding endurance and performance characteristics of HP solid state drives

Choosing the Right NAND Flash Memory Technology

COS 318: Operating Systems. Storage Devices. Kai Li Computer Science Department Princeton University. (

In-Block Level Redundancy Management for Flash Storage System

Flash Memory Basics for SSD Users

Chapter Introduction. Storage and Other I/O Topics. p. 570( 頁 585) Fig I/O devices can be characterized by. I/O bus connections

Trabajo Memorias flash

COS 318: Operating Systems. Storage Devices. Kai Li and Andy Bavier Computer Science Department Princeton University

SLC vs MLC: Proper Flash Selection for SSDs in Industrial, Military and Avionic Applications. A TCS Space & Component Technology White Paper

An Overview of Flash Storage for Databases

Don t Let RAID Raid the Lifetime of Your SSD Array

A Flash Storage Technical. and. Economic Primer. and. By Mark May Storage Consultant, By James Green, vexpert Virtualization Consultant

SLC vs MLC: Which is best for high-reliability apps?

Disk Storage & Dependability

SSDs and RAID: What s the right strategy. Paul Goodwin VP Product Development Avant Technology

NAND Flash Architecture and Specification Trends

Rugged & Reliable Data Storage Solid-State State Flash Disk overview

Scalus Winter School Storage Systems

How To Write On A Flash Memory Flash Memory (Mlc) On A Solid State Drive (Samsung)

Technologies Supporting Evolution of SSDs

SATA SSD Series. InnoDisk. Customer. Approver. Approver. Customer: Customer. InnoDisk. Part Number: InnoDisk. Model Name: Date:

Comparison of NAND Flash Technologies Used in Solid- State Storage

Solid State Drives Data Reliability and Lifetime. Abstract

NAND Basics Understanding the Technology Behind Your SSD

Implementation of Buffer Cache Simulator for Hybrid Main Memory and Flash Memory Storages

SOLID STATE DRIVES AND PARALLEL STORAGE

Flash Memory Technology in Enterprise Storage

Solid State Drive Technology

The Technologies & Architectures. President, Demartek

Outline. CS 245: Database System Principles. Notes 02: Hardware. Hardware DBMS Data Storage

NAND Flash FAQ. Eureka Technology. apn5_87. NAND Flash FAQ

HP Smart Array Controllers and basic RAID performance factors

Flash for Databases. September 22, 2015 Peter Zaitsev Percona

Storing Data: Disks and Files

WP001 - Flash Management A detailed overview of flash management techniques

Solid State Technology What s New?

File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System

Programming NAND devices

EMC XTREMIO EXECUTIVE OVERVIEW

How it can benefit your enterprise. Dejan Kocic Netapp

White Paper. Avoiding premature failure of NAND Flash memory. Inhalt

Guide to SATA Hard Disks Installation and RAID Configuration

Important Differences Between Consumer and Enterprise Flash Architectures

With respect to the way of data access we can classify memories as:

Speeding Up Cloud/Server Applications Using Flash Memory

FLASH TECHNOLOGY DRAM/EPROM. Flash Year Source: Intel/ICE, "Memory 1996"

A Close Look at PCI Express SSDs. Shirish Jamthe Director of System Engineering Virident Systems, Inc. August 2011

Flash 101. Violin Memory Switzerland. Violin Memory Inc. Proprietary 1

Solid State Drive Architecture

Technology Trends in the Storage Universe

Accelerating Server Storage Performance on Lenovo ThinkServer

Guide to SATA Hard Disks Installation and RAID Configuration

File System Management

Impact of Stripe Unit Size on Performance and Endurance of SSD-Based RAID Arrays

1 / 25. CS 137: File Systems. Persistent Solid-State Storage

Endurance Models for Cactus Technologies Industrial-Grade Flash Storage Products. White Paper CTWP006

DELL SOLID STATE DISK (SSD) DRIVES

21 st Century Storage What s New and What s Changing

RAID: Redundant Arrays of Independent Disks

Lecture 16: Storage Devices

Lab Evaluation of NetApp Hybrid Array with Flash Pool Technology

Flash Memory. Jian-Jia Chen (Slides are based on Yuan-Hao Chang) TU Dortmund Informatik 12 Germany 2015 年 01 月 27 日. technische universität dortmund

760 Veterans Circle, Warminster, PA Technical Proposal. Submitted by: ACT/Technico 760 Veterans Circle Warminster, PA

SSDs tend to be more rugged than hard drives with respect to shock and vibration because SSDs have no moving parts.

Flash-optimized Data Progression

Intel Solid-State Drive 320 Series

Temperature Considerations for Industrial Embedded SSDs

A Simple Virtual FAT File System for Wear-Leveling Onboard NAND Flash Memory

How To Improve Write Speed On An Nand Flash Memory Flash Drive

SALSA Flash-Optimized Software-Defined Storage

This page is a hidden page. To keep from printing this page, uncheck the checkbox for printing invisible pages in the printing dialog box.

How To Create A Multi Disk Raid

Using RAID6 for Advanced Data Protection

VERY IMPORTANT NOTE! - RAID

Industrial Flash Storage Module

A Storage Architecture for High Speed Signal Processing: Embedding RAID 0 on FPGA

Input / Ouput devices. I/O Chapter 8. Goals & Constraints. Measures of Performance. Anatomy of a Disk Drive. Introduction - 8.1

SATA II 3Gb/s SSD. SSD630 Benefits. Enhanced Performance. Applications

HP 80 GB, 128 GB, and 160 GB Solid State Drives for HP Business Desktop PCs Overview. HP 128 GB Solid State Drive (SSD)

Flash Memories. João Pela (52270), João Santos (55295) December 22, 2008 IST

How To Perform Analysis Of An Flash Flash Memory Solidstate Disk

RAID Level Descriptions. RAID 0 (Striping)

Transcription:

Data Distribution Algorithms for Reliable Parallel Storage on Flash Memories Zuse Institute Berlin November 2008, MEMICS Workshop

Motivation Nonvolatile storage Flash memory - Invented by Dr. Fujio Masuoka 1984 Type of EEPROM Usage in a RAID-like configuration instead of hard disk drives Flash memory based storage: Alternative to hard disk drives?

Outline 1 Flash based memory 2 3

Application of Flash memories

Pros and Cons Less power consumption Higher access rates (in some cases) Uniform access time for random access - no seeks Robustness (extreme temperatures, vibration, shock) Price Limited erase cycles Flash management Model 2.5 SATA 3.0 Gbps SSD 2.5 SATA 3.0Gbps HDD Mechanism type Solid NAND flash based Magnetic rotating platters Density 64 GByte 80 GByte Weight 73 g 365g Active Power consumption 1 W 3.86 W Operating temperature 0 C-70 C 5 C-55 C Acoustic Noise None 0.3 db Endurance MTBF > 2M hours MTBF <0.7M hours Av. access time 0.1 msec 17 msec Read performance 100 MB/s 34 MB/s Write performance 80 MB/s 34 MB/s

Limited erase cycles and flash management Insulating oxide layers Source n+ Transistor Control gate Floating gate P Substrate Drain n+ Memory cell: floating gate transistor Retention and Endurance page. NAND flash page page page block block =erase unit Typical page size: 16896 B (=2 KB+64 B spare) Typical block size: 64 pages = 128 KB

Mapping Problem: How to map logical blocks to flash adresses? Disadvantage of linear mapping (one-to-one mapping): Frequently-used erase units wear out Identity mapping requires lots of copying to and from RAM (fixed block size). Example: flash memory RAM data data data data copy to RAM erase data data data data modify data mod. data data data copy back data mod. data data data Solution: Sophisticated block-to-flash mapping and moving around blocks: wear leveling, garbage collection

Mapping - example Mapping of virtual block 5 to physical block 0, page 3 block flash memory virtual to logical example: page maps 0 1 2 3 page 0 1 2 2 7 0 1 2 3 4 2 5 7 4 5 virtual block 5 = logical block 7= 111 = log. erase unit 1 page 3 = phy. erase unit 0 page 3 2 0 0 1 Algorithms and Data Structures for Flash Memories, Gal, Toledo, 2004 logical to physical erase unit map

Wear leveling - example flash memory hot pool cold pool order in pools... older stop aging On Efficient Wear Leveling for Large-Scale Flash-Memory Storage Systems, Li-Pin Chang, 2007

Garbage collection - example Free space drops below a threshold Select blocks for reclamation Copy all live pages to free pages somewhere else Change mapping entry, update to new position Erase block and allocate pages as free erase erase block x erase block x erase block y free page life page invalid page

Facts (local) wear leveling Performance: Erase operation is slow No in-place update Controller: Efficient mapping and erase distribution

Flash memory in a RAID-like system Aggregate higher bandwidth Reliability (redundancy for fault tolerance) Problem: uneven usage of flash memories, more writes to redundant blocks when data becomes updated Update accumulated access load Data Redundancy flash-raim: Redundant Array of Independent flash Memories

Uneven distribution of writes

flash-raim and wear leveling There exist data distribution algorithms to place data evenly on a single memory Goal: long lifetime of a single memory We work on even distribution of writes across all memories in a memory array Goal: even usage of cells on all flash memories, reliable data storage, high throughput Method: global wear leveling

Data Distribution Algorithms Staggered Striping Hierarchical dual pool Algorithm + + + Memory 1 Memory 2 Memory 3 Different starting points of algorithms Explicit placing of data Data movement after storing and local wear leveling

Discussion of Future work Extension of the simulator to evaluate the global wear leveling algorithms Parameter study (trade-off) Define metrics to compare algorithms Lifetime of the flash-raim Speed Overhead Usage of traces

Summary Use aggregated bandwidth and fault-tolerance flash-raim Simulator for evaluation Next steps: Implementation and evaluation of the global wear leveling algorithm

Erase cycles data/ redundancy memory 100 90 80 distribution of access frequencies Disk 1 Disk 6 number of erase cycles 70 60 50 40 30 20 10 0 1.1968e+06 1.197e+06 1.1972e+061.1974e+061.1976e+061.1978e+06 1.198e+06 1.1982e+061.1984e+061.1986e+061.1988e+06 physical erase block adress