Digital Recipe

Tradeoffs in Scalable Data Routing for Deduplication Clusters 본문

컴퓨터 공학/(분야별) 스토리지(SSD)

Tradeoffs in Scalable Data Routing for Deduplication Clusters

노리터 2011. 4. 22. 15:41

분류 :
Backup Storage System

논문명 :
Tradeoffs in Scalable Data Routing for Deduplication Clusters

발표지 :
FAST 2011




1. Introduction

최근 백업해야 할 데이터의 양이 기하급수적으로 증가함에 따라 백업 스토리지는
높은 데이터 처리량높은 중복제거율을 가져야만 한다.

따라서 이 논문에서는 이런 장점을 가진 하드디스크를 사용하는 클러스터 스토리지 시스템을 제안하고 있다.

※ 중복제거란?
논리적으로 중복되는 데이터를 여러번 저장하기 보다는 물리적으로 한번만 저장함으로서
스토리지 활용도를 높이는 것을 말한다.

※ 클러스터 스토리지 시스템이란?
스토리지를 가진 하나의 시스템을 하나의 노드라고 하고 여러 노드를 묶어 하나의 시스템처럼 사용하는 기법이다.



2. 기본적인 아키텍처

일반적인 클러스터 백업 스토리지는 데이터를 chunk단위로 각 노드에 저장하게 된다. chunk의 크기가 작으면 새로운 chunk가 기존의 chunk와 중복 될 확률이 높아지지만 메인서버에서 각 노드로 전송되는 오버헤드가 늘어나게 된다. 반대로 chunk의 크기가 크다면 새로운 chunk가 기존 chunk와 중복 될 확률이 낮아지지만 메인서버에서 각 노드로 전송되는 오버헤드가 줄어들게 된다.

따라서 이 논문에서는 이 2가지 장점을 달성하기 위해
1. 메인서버에서 각 노드로 chunk를 전달할 때에는 연속된 chunk를 하나의 super-chunk로 묶어
각 노드에 전달하고
2. 각 노드는 super-chunk를 chunk단위로 쪼개 데이터가 중복될 확률을 높인다.




3. 추가적인 기법

추가적인 처리량의 향상을 위하여
1. EMC사의 SISL 기술을 사용하여 각 노드의 cache locality를 향상시켰으며 결과로서 불필요한 Disk I/O가 줄어들어 병목현상이 줄어들었다.

2. 또한 각 노드 간의 load balance를 맞춰 Disk I/O에 대한 병렬성을 최대화 하여 처리량을 향상시켰다.


4. Load Balance를 유지하기

이 논문에서 각 노드 간의 load balance를 유지하기 위하여 2가지 기법을 소개한다. stateless와 stateful 방식이다.

stateless 방식은 단순히 mod 연산을 통해 데이터를 각 노드에 배분 하는 방식으로 overhead가 적고 적은 수의 노드에서 효과적이다라는 장점을 가진다.

stateful 방식은 하나의 super-chunk가 하나의 노드로 전송 됐을 경우 중복되는 chunk의 개수와 각 노드가 가진 스토리지 과부하 여부를 감안하고 계산하여 데이터를 각 노드에 배분하는 방식이다. overhead가 증가하지만 노드의 수가 많아지더라도 load balance와 deduplication면에서 stateless보다 장점을 가진다.



2011. 04. 22

Comments