A SCALABLE DEDUPLICATION AND GARBAGE COLLECTION ENGINE FOR INCREMENTAL BACKUP

Similar documents
A Deduplication File System & Course Review

Hardware Configuration Guide

Direct NFS - Design considerations for next-gen NAS appliances optimized for database workloads Akshay Shah Gurmeet Goindi Oracle

Building a High Performance Deduplication System Fanglu Guo and Petros Efstathopoulos

COS 318: Operating Systems

MAD2: A Scalable High-Throughput Exact Deduplication Approach for Network Backup Services

Speeding Up Cloud/Server Applications Using Flash Memory

Data Backup and Archiving with Enterprise Storage Systems

Top Ten Questions. to Ask Your Primary Storage Provider About Their Data Efficiency. May Copyright 2014 Permabit Technology Corporation

FAST 11. Yongseok Oh University of Seoul. Mobile Embedded System Laboratory

HADOOP PERFORMANCE TUNING

A Novel Way of Deduplication Approach for Cloud Backup Services Using Block Index Caching Technique

SDFS Overview. By Sam Silverberg

Bigdata High Availability (HA) Architecture

In-Memory Data Management for Enterprise Applications

Inline Deduplication

Data Deduplication in Tivoli Storage Manager. Andrzej Bugowski Spała

Veeam Best Practices with Exablox

Original-page small file oriented EXT3 file storage system

WAN Optimized Replication of Backup Datasets Using Stream-Informed Delta Compression

SAP HANA - Main Memory Technology: A Challenge for Development of Business Applications. Jürgen Primsch, SAP AG July 2011

The What, Why and How of the Pure Storage Enterprise Flash Array

Deduplication Demystified: How to determine the right approach for your business

NetApp Data Compression and Deduplication Deployment and Implementation Guide

Distributed Block-level Storage Management for OpenStack

Turnkey Deduplication Solution for the Enterprise

Data Deduplication and Tivoli Storage Manager

Using Synology SSD Technology to Enhance System Performance Synology Inc.

Using Synology SSD Technology to Enhance System Performance Synology Inc.

Alternatives to Big Backup

Low-Cost Data Deduplication for Virtual Machine Backup in Cloud Storage

DEDUPLICATION NOW AND WHERE IT S HEADING. Lauren Whitehouse Senior Analyst, Enterprise Strategy Group

Condusiv s V-locity Server Boosts Performance of SQL Server 2012 by 55%

Evaluation of Enterprise Data Protection using SEP Software

DEXT3: Block Level Inline Deduplication for EXT3 File System

09'Linux Plumbers Conference

SOLUTION BRIEF. Resolving the VDI Storage Challenge

The Curious Case of Database Deduplication. PRESENTATION TITLE GOES HERE Gurmeet Goindi Oracle

Distributed File System. MCSN N. Tonellotto Complements of Distributed Enabling Platforms

Effective Planning and Use of IBM Tivoli Storage Manager V6 and V7 Deduplication

Eliminating Backup System Bottlenecks: Taking Your Existing Backup System to the Next Level. Jacob Farmer, CTO, Cambridge Computer

ITCertMaster. Safe, simple and fast. 100% Pass guarantee! IT Certification Guaranteed, The Easy Way!

Protect Data... in the Cloud

Effective Planning and Use of TSM V6 Deduplication

Accelerating Enterprise Applications and Reducing TCO with SanDisk ZetaScale Software

Symantec Backup Appliances

Couchbase Server Under the Hood

Trends in Enterprise Backup Deduplication

Ryusuke KONISHI NTT Cyberspace Laboratories NTT Corporation

PARALLELS CLOUD STORAGE

Cloud Storage. Parallels. Performance Benchmark Results. White Paper.

Backup Software Data Deduplication: What you need to know. Presented by W. Curtis Preston Executive Editor & Independent Backup Expert

WHITE PAPER. Permabit Albireo Data Optimization Software. Benefits of Albireo for Virtual Servers. January Permabit Technology Corporation

How To Test A Flash Storage Array For A Health Care Organization

Deduplication, Compression and Pattern-Based Testing for All Flash Storage Arrays Peter Murray - Load DynamiX Leah Schoeb - Evaluator Group

3Gen Data Deduplication Technical

Redefining Oracle Database Management

StreamServe Persuasion SP5 Microsoft SQL Server

Live Deduplication Storage of Virtual Machine Images in an Open-Source Cloud

Cloud De-duplication Cost Model THESIS

UNDERSTANDING DATA DEDUPLICATION. Thomas Rivera SEPATON

Performance Characteristics of VMFS and RDM VMware ESX Server 3.0.1

Cost Effective Backup with Deduplication. Copyright 2009 EMC Corporation. All rights reserved.

Characteristics of Backup Workloads in Production Systems

Crystal Reports Server 2008

Everything you need to know about flash storage performance

Avoiding the Disk Bottleneck in the Data Domain Deduplication File System

Metadata Feedback and Utilization for Data Deduplication Across WAN

Read Performance Enhancement In Data Deduplication For Secondary Storage

ZFS Administration 1

Protect SAP HANA Based on SUSE Linux Enterprise Server with SEP sesam

Enhancing SQL Server Performance

STORAGE. Buying Guide: TARGET DATA DEDUPLICATION BACKUP SYSTEMS. inside

Understanding Data Locality in VMware Virtual SAN

Theoretical Aspects of Storage Systems Autumn 2009

How SSDs Fit in Different Data Center Applications

Operating Systems. Virtual Memory

Distributed File Systems

Characteristics of Backup Workloads in Production Systems

UNDERSTANDING DATA DEDUPLICATION. Jiří Král, ředitel pro technický rozvoj STORYFLEX a.s.

UNDERSTANDING DATA DEDUPLICATION. Tom Sas Hewlett-Packard

Using HP StoreOnce D2D systems for Microsoft SQL Server backups

The safer, easier way to help you pass any IT exams. Exam : E Backup Recovery - Avamar Expert Exam for Implementation Engineers.

IBM Content Collector Deployment and Performance Tuning

Maximizing SQL Server Virtualization Performance

SharePoint Server 2010 Capacity Management: Software Boundaries and Limits

Seriously: Tape Only Backup Systems are Dead, Dead, Dead!

VM-Centric Snapshot Deduplication for Cloud Data Backup

Intro to AWS: Storage Services

Understanding EMC Avamar with EMC Data Protection Advisor

Cloud Server. Parallels. Key Features and Benefits. White Paper.

idedup: Latency-aware, inline data deduplication for primary storage

How To Virtualize A Storage Area Network (San) With Virtualization

Transcription:

A SCALABLE DEDUPLICATION AND GARBAGE COLLECTION ENGINE FOR INCREMENTAL BACKUP Dilip N Simha (Stony Brook University, NY & ITRI, Taiwan) Maohua Lu (IBM Almaden Research Labs, CA) Tzi-cker Chiueh (Stony Brook University, NY & ITRI, Taiwan)

WHAT IS DEDUPLICATION Technique for eliminating redundant data c1 c2 c3 c2 c1 c4 c2 c3 c1 c2 c3 c4 2

USE CASES OS1 OS2 OS3 HOST MACHINE HARDWARE 3

INTRODUCTION Duplicity = Percentage of duplicate blocks / Blocks before deduplication Deduplication Throughput = Number of blocks identified as a duplicate or not / second Deeper inspection gives higher duplicity but at the cost of throughput Incremental block level backups have lesser locality compared to full backups A good balance requires sophisticated techniques to identify duplicates. 4

INCREMENTAL BACKUP ENTIRE VOLUME DIRTY BLOCK LIST SAN, NAS DIRTY BLOCK TRACKER DATA STORE 5

MOTIVATION RAM 1 PB Data Backup System Block Size: 4KB Fingerprint Size: 16 Bytes Fingerprint Index Table Size: 4 TB DISK Cannot fit in RAM! 6

FINGERPRINT INDEX Can you identify only useful fingerprints and avoid storing less useful fingerprints? Is it possible to control the usefulness factor in balancing duplicity and throughput? 7

SAMPLED FINGERPRINT INDEX: SFI INCOMING FINGERPRINTS Query Fingerprint Hash Location on Disk #F1 L1 #F7 L3 #F18 L1 #F89 L9 L1 L2 L9 L3 L9 8

SFI SFI SFI Day N Day N+1 Day N Day N+1 DUPLICATE NOT FOUND DUPLICATE FOUND 9

WHY SAMPLING WORKS? 10-100 120-220 980-1200 Day N delta list 100-200 300-500 800-900 Day N+1 delta list 1000-1030 1200-1330 150-180 300-400 3000-3060 3440-3660 820-850 Day N+2 delta list 2000-2030 150-180 3000-3130 1200-1330 STABLE 10

De-duplication Ratio (%) 50 45 40 35 30 25 20 15 10 SFI VARIATIONS Fixed SR(SR = 10) Variable SR(SR = 10, Stable Hit Count=1) Variable SR(SR = 10, Stable Hit Count=2) Variable SR(SR = 10, Stable Hit Count=5) Fixed SR(SR = 256) 2 10 50 250 SFI Size (Kilo Fingerprints) 11

BOTTLENECKS Accessing the data disk to fetch fingerprints pointed to by SFI can be very expensive. How effective is caching? Assuming repeated usage is one hint. Prefetching is another caching strategy. 12

PREFETCHING OPTIONS Fingerprints are better fetched in a group (containers) and there are multiple options to choose the basis of group formation. Temporal Proximity: Prefetch with the assumption that fingerprints created at the same time are referred together later. Content Proximity: Prefetch with the assumption that fingerprints located near each other are referred together later. The most important factor that decides the best of these approaches is disk I/O activity. 13

TEMPORAL PROXIMITY(TP) INCOMING FINGERPRINTS Nonmatched duplicates NEW Stored Fingerprints STORED FINGERPRINTS STORED FINGERPRINTS STORED FINGERPRINTS 14

CONTENT PROXIMITY (CP) INCOMING FINGERPRINTS STORED FINGERPRINTS STORED FINGERPRINTS 15

TP VS CP The approach in which disk I/Os are minimal is the best approach to choose TP Similar to writeoptimized file system. Log Structured File System Fewer write I/Os More read I/Os Containers are 100% full CP Similar to readoptimized file system More write I/Os Fewer read I/Os. Containers are X% full to accommodate space for future matches 16

CP VS TP PERFORMANCE Fill-up Threshold Dedupe Ratio Dedupe Throughput Container Read Count Container Write Count 70 93.11% 282.9K 1.238 0.0743 755 80 93.17% 290.7K 1.248 0.0739 814 90 93.14% 288.9K 1.259 0.0733 809 95 93.16% 287.2K 1.267 0.0733 807 100 93.26% 295.8K 1.264 0.0732 601 Per-Segment Comparison TP approach performs marginally better than all other CP variants. 17

GARBAGE COLLECTION Blocks have to be removed from the database: Incoming block is a duplicate. A snapshot retires and the block is not referred by any other snapshot. Create Snapshot 1 Create Snapshot 2 Delete Snapshot 1 B1 B4 B10 B12 B2 B5 B11 B13 B3 B6 B1 B1 should be retained because it is still referenced by B11 from snapshot 2 18

WHY IS GC IMPORTANT GC has to maintain some metadata for each block in the backup system to keep track of which block is referred to by blocks in some other snapshot. Metadata size exceeds in-memory requirements. Same problem of disk I/Os as seen with SFI and containers. Mishandling GC can bottleneck Deduplication process. 19

REFERENCE COUNT GARBAGE COLLECTOR Reference count based method: Every volume is configured with an expiration time. Every time a snapshot is taken, increase reference count for all blocks in the volume. At the end of expiration time for volume, decrement the reference count for all blocks in volume. All those blocks having reference count = 0, will be freed. Costs: Fetch metadata for every block in volume every time a snapshot is taken. To free a block, handle the metadata 2 times: One at the time of creating a snapshot and another at the time the snapshot expires. 20

EXPIRY TIME GARBAGE COLLECTOR Expiry time based method: Every volume is configured with an expiration time. Every time a snapshot is taken, update the new expiry time for all blocks in the volume to maximum of (current time) or (current time + volume expiry time). No need to update anything when snapshot is deleted. Free all the blocks whose expiry time has passed the current time. Costs: This is better than reference count method by a factor of 2. Since you do not update all blocks at snapshot expiration time. 21

HYBRID GARBAGE COLLECTOR Each block in delta list has <LBN, CPBN, BPBN> LBN: Logical Block Number CPBN: Current Image Physical Block Number BPBN: Before Image Physical Block Number At snapshot creation time, Reference count for: CPBN is incremented. BPBN is decremented. Expiry time for BPBN is set to maximum of (current value) or (current time + volume s retention time) All blocks whose reference count is 0 are put in a separate queue and are freed when expiry time passes the current time. 22

Snapshot 1 Snapshot 2 Snapshot 3 1, 10, -1 1, 14, 10 1, 18, 14 2, 11, -1 2, 15, 11 7, 19, -1 3, 12, -1 5, 16, -1 5, 20, 16 4, 13, -1 6, 17, -1 8, 21, -1 23

Snapshot 1 Snapshot 2 Snapshot 3 1, 10, -1 2, 11, -1 10 1 11 1 1, 14, 10 2, 15, 11 10 0 11 0 12 2 13 1 1, 18, 14 7, 19, -1 10 0 11 0 12 1 13 0 14 0 15 1 12 1 14 1 16 0 17 1 3, 12, -1 5, 16, -1 15 1 5, 20, 12 18 1 19 1 13 1 16 0 20 1 4, 13, -1 6, 17, -1 17 1 4, 21, 13 21 1 24

HYBRID GC WORKS! Reference Count is updated only for modified blocks in delta list and NOT for all blocks in the volume. Expiry time is checked only on the blocks that have reference count 0 and that are put in a separate queue. Metadata is not updated for any blocks when snapshot is expired. Blocks that never get modified, will have reference count > 1 and will never get garbage collected as it s still in use by atleast 1 current image. Scalable because delta list is typically much much smaller than the entire volume. 25

IMPLEMENTING GC Managing metadata updates in GC is nontrivial because of very low locality Already existing blocks and the incoming duplicates have hardly any dependency. Use BOSC scheme to batch the updates and sequentially commit the batched updates to disk periodically. Use TRAIL Logging to ensure data persistency 26

!! Incoming Fingerprints from Sungem to be updated in GC Database "! #! "! "! "! "! "! "! #! #! #! "! Metadata P-Array BOSC Logging GC Thread 1 Update Bucket N GC Thread 2 Update Bucket K Fast Logging Disk GC Disk 1 GC Disk 2 27

GC S INFLUENCE Commit Threads Dedupe +Vanilla GC Dedupe +BOSC GC Dedupe & NO GC 1 5879 54047 287204 2 6003 268218 287204 4 9858 277670 287204 10 8121 269272 287204 severe bottleneck very much comparable 28

FINGERPRINTS PROCESSING SFI Lookup Load HIT containers Process HIT fingerprints and convert some MISS to Pseudo HITS(PH) Load containers 100, 876 Process MISS fingerprints and store in nearest container: 876 29

DEDUPLICATION AND GC OVERALL VIEW 30

SUSTAINED HIGH PERFORMANCE Deduplication Throughput (Kilo Fingerprints/sec) 350 300 250 200 150 100 50 Deduplication Throughput Deduplication Ratio 50 0 200 400 600 800 1000 1200 Input Fingerprint Count (Unit: Million fingerprints) 100 90 80 70 60 Deduplication Ratio (Percentage) 31

SUMMARY Supports very high throughput across all ranges of deduplication ratios. Supports dynamic sampling rate to optimally store SFI without hurting the deduplication ratio. In depth comparison of TP and CP approaches to store containers. Scalable GC technique which scales only with changed data and NOT the entire volume size. 32

33