FAWN: A Fast Array of Wimpy Nodes David G. Andersen, Jason Franklin, - - PowerPoint PPT Presentation

fawn a fast array of wimpy nodes
SMART_READER_LITE
LIVE PREVIEW

FAWN: A Fast Array of Wimpy Nodes David G. Andersen, Jason Franklin, - - PowerPoint PPT Presentation

FAWN: A Fast Array of Wimpy Nodes David G. Andersen, Jason Franklin, Michael Kaminsky * , Amar Phanishayee, Lawrence Tan, Vijay Vasudevan Carnegie Mellon University, * Intel Labs SOSP09 1 CAS ICT Storage System Group Outline


slide-1
SLIDE 1

FAWN: A Fast Array of Wimpy Nodes

1

David G. Andersen, Jason Franklin, Michael Kaminsky*, Amar Phanishayee, Lawrence Tan, Vijay Vasudevan Carnegie Mellon University, *Intel Labs SOSP’09

CAS– ICT – Storage System Group

slide-2
SLIDE 2

CAS– ICT – Storage System Group 2

Outline

 Introduction  Problems  Designs

 FAWN-KV  FAWN-DS

 Evaluation  Related Work  Conclusions  Acknowledgments

slide-3
SLIDE 3

CAS– ICT – Storage System Group 3

Introduction

 Large-scale data-intensive applications are growing

in both size and importance.

 Common characteristics:

 I/O intensive, requiring random access over large

datasets;

 Massively parallel with thousands of concurrent, mostly-

independent operations;

 High load requires large clusters to support;  The size of objects stored is typically small.

slide-4
SLIDE 4

Problems

 Small-object random-access workloads are ill-

served by conventional disk-based clusters.

 DRAM-based clusters are expensive and consume

a surprising amount of power.

CAS– ICT – Storage System Group 4

Performance Energy

Flash FAWN

slide-5
SLIDE 5

What is FAWN?

 FAWN:

 Hardware: a specified wimpy node, embedded CPU as

the processor and limited DRAM and flash as the storage medium.

 Software: FAWN-KV System, a system that can

manage thousands of FAWN nodes efficiently.

CAS– ICT – Storage System Group 5

slide-6
SLIDE 6

Why FAWN?

 Increasing CPU-I/O Gap

 Using wimpy processors selected to reduce I/O-included

idle cycles.

 CPU power consumption grows super-linearly

with speed

 Dynamic power scaling on traditional systems is

surprisingly inefficient

CAS– ICT – Storage System Group 6

slide-7
SLIDE 7

FAWN-KV Architecture-I

 Back-end: responsible for serving particular key.  Front-end:

 Maintain membership list.  Forward requests to back-end node.

CAS– ICT – Storage System Group 7

Front-end:Back-end = 1:n

Ring

slide-8
SLIDE 8

FAWN-KV Architecture-II

CAS– ICT – Storage System Group 8

Front-end Back-end Switch Back-end Back-end Back-end …… FAWN-DS

Manages back-ends Routes Requests If the front-end which the client contacted with was not the back-end belonged to, How to deal this scene? Client

slide-9
SLIDE 9

FAWN-KV Architecture-III

CAS– ICT – Storage System Group 9

Front-end Back-end Switch Back-end Back-end Back-end …… FAWN-DS Front-end

2、front-end cache values. Client

Map table

1、client aware of the front-end mapping

slide-10
SLIDE 10

FAWN-KV Architecture-IV

 Replication and Consistency

 Chain replication: strong consistency.

CAS– ICT – Storage System Group 10

slide-11
SLIDE 11

FAWN-KV Architecture-V

 Joins and Leaves

 Joins:

 Key range split;  Data transmission, new vnode should get a copy of the key range;  Update the front-end to valid the new vnode for requests;  Free the space of the vnode witch down from the chain.

CAS– ICT – Storage System Group 11

slide-12
SLIDE 12

FAWN-KV Architecture-VI

 Phase 1: Datastore pre-copy

 E1 sends C1 a copy of the datstore log file.

CAS– ICT – Storage System Group 12

 Phase 2: Chain insertion, log flush and play-forward

 Update each node’s neighbor state to add C1 to the chain;  Ensure any in-flight updates sent after the phase 1 completed

are flushed to C1.

slide-13
SLIDE 13

FAWN-DS-I

 FAWN-DS

 Log-structured key-value store;  Using a in-DRAM hash table to map keys to an offset

in the append-only Data Log on flash.

CAS– ICT – Storage System Group 13

Data Log Key Len Data Log Entry hashtable … 2i buckets keyFrag index 160- bit key 15 bit i bit Offset Fragment pnt Inserted values are appended keyFrag valid delete 13 14 15

DRAM flash

slide-14
SLIDE 14

FAWN-DS-II

 Back-end Interface:

 Get(key, key_len, &data);  Delete(key, key_len);  Insert(key, key_len, data, length).

 Key step of the above:

 Find the correct bucket of the key in the Hash index.

CAS– ICT – Storage System Group 14 How to map the key to hash index? 2160 to 2i?

slide-15
SLIDE 15

FAWN-DS-III

 Conflict chain: depth = 8.  Different hash functions: three funcs.

CAS– ICT – Storage System Group 15

… …

h1(key) h2(key) h3(key)

slide-16
SLIDE 16

FAWN-DS-IV

 Maintenance: Split, Merge, Compact

 Split: triggered by a node addition.

CAS– ICT – Storage System Group 16

B C D F G H A

slide-17
SLIDE 17

Nodes Stream Data Range-I

 Create new Datastore A(dsA);  Scan Datastore B(dsB) and transfer the data in

rang A to dsA.

CAS– ICT – Storage System Group 17

dsB dsA

Concurrent inserts

Scan and split Datastore list

slide-18
SLIDE 18

Nodes Stream Data Range-II

 Create new Datastore A(dsA);  Scan Datastore B(dsB) and transfer the data in

rang A to dsA.

CAS– ICT – Storage System Group 18

dsB dsA

Concurrent inserts

Scan and split Datastore list

lock unlock

slide-19
SLIDE 19

Evaluation

 Evaluation Items:

 K/V lookup efficiency comparison;  Impact of Ring Membership Changes;  TCO analysis for random read.

 Evaluation Hardware:

 AMD Geode LX processor, 500MHz;  256 MB DDR SDRAM, 400MHz;  100Mbit/s Ethernet;  4GB Sandisk Extreme IV CF.

CAS– ICT – Storage System Group 19

slide-20
SLIDE 20

K/V Lookup Efficient Comparison-I

CAS– ICT – Storage System Group 20

 FAWN-based system over 6x more efficient than

the other traditional systems

slide-21
SLIDE 21

K/V Lookup Efficient Comparison-II

CAS– ICT – Storage System Group 21

slide-22
SLIDE 22

Impact of Ring Membership Changes-I

CAS– ICT – Storage System Group 22

slide-23
SLIDE 23

Impact of Ring Membership Changes-II

CAS– ICT – Storage System Group 23

slide-24
SLIDE 24

TCO Analysis for Random Read-I

 TCO = Capital Cost + Power Cost ($0.1/kWh)

CAS– ICT – Storage System Group 24

slide-25
SLIDE 25

TCO Analysis for Random Read-II

 How many nodes are required for a cluster?

CAS– ICT – Storage System Group 25

slide-26
SLIDE 26

TCO Analysis for Random Read-III

CAS– ICT – Storage System Group 26

slide-27
SLIDE 27

Related Work

 Hardware architecture:

 Pairing an array of flash chips and DRAM with low-

power CPUs for low-power data intensive computing.

 File systems for Flash:

 Several file systems, such as JFFS2, are specialized for

use on flash.

 High-throughput Storage and Analysis:

 Some systems like Hadoop, provide bulk throughput for

massive datasets with low selectivity.

CAS– ICT – Storage System Group 27

slide-28
SLIDE 28

CAS– ICT – Storage System Group 28

Conclusions

 FAWN architecture reduce energy consumption

  • f cluster computing.

 FAWN-KV address the challenges of wimpy

nodes for a key-value store:

 Log-structured , memory efficient datastore;  Efficient replication;  Meets the energy efficiency and performance goals.

slide-29
SLIDE 29

Acknowledgment

 Article Understanding:

 Prof. Xiong  Fengfeng Pan  Zigang Zhang

 PPT Production:

 Fengfeng Pan  Biao Ma

CAS– ICT – Storage System Group 29

slide-30
SLIDE 30

CAS– ICT – Storage System Group 30

Thank You!