기술자료

DBMS, DB 구축 절차, 빅데이터 기술 칼럼, 사례연구 및 세미나 자료를 소개합니다.

디듀플리케이션 시스템의 데이터 기록

기술자료
DBMS별 분류
Etc
작성자
dataonair
작성일
2007-09-04 00:00
조회
3198



디듀플리케이션 시스템의 데이터 기록
순 참조 방식 vs 역 참조 방식

디듀플리케이션 시스템의 주요 특징 중 하나는 중복된 데이터나 중복되지 않은 데이터를 구분해서 기록한다는 점이다.
유니크(unique)한 데이터 즉, 이전에 기록되지 않은 데이터 유형의 경우 어떻게 처리하는가는 매우 간단하다. 우리가 아는 기록방식 그대로다. ‘어떠한 가공도 하지 않고 데이터를 원형 그대로 기록하는 것’ 그 이상도 그 이하도 없다. 디듀플리케이션의 기록 방식을 통해 도입 가이드 라인을 제시하고 관련 제품을 살펴봤다.

백영진_ LG히다찌 컨설턴트(jinney@lghitachi.co.kr)

디듀플리케이션의 두 가지 처리 방식을 순 참조(Forward Referencing) 방식과 역 참조(Reverse Referencing) 방식이라고 한다.

순 참조 방식은 새로운 중복된 데이터가 들어올 경우 대개 이전에 중복된 데이터 위에 덮어쓰고 이전의 데이터에 대해서는 덮어썼다는 사실을 데이터베이스에 기록한다. 따라서 중복된 데이터가 많을 경우에는 데이터 기록하는 작업 역시 많아지게 된다.

좀 더 자세히 살펴보면 중복된 데이터가 또 들어와도 그 데이터를 기록하게 됨으로써 오프 라인 방식의 중복 제거의 장점인 다중 포스트 프로세싱(multi post-processing)이 어려워지게 된다. 게다가 중복된 데이터도 기록하고 유니크(unique)한 신규 데이터도 기록한다면 경우에 따라 백업에 소요되는 시간과 중복 제거를 위해 소요되는 시간이 거의 같아질 수가 있다.

다소 극단적인 예를 들어 본다면 6시간 걸려 백업을 수행했는데 중복 제거 처리를 위해서 또다시 6시간을 처리한다면 어떻게 되겠는가 백업해야 할 양이 많으면 많을수록 데이터 중복의 빈도수도 높아지는 것은 당연할 것이고, 이를 위해서 최신의 데이터라는 이유만으로 이전의 중복된 데이터 위에 또 다시 덮어쓰는 것은 그다지 경제적이지 못하다. 이러한 이유로 순 참조 방식은 그다지 많이 채택되지 않는 방식이다. 현재 출시되는 제품 중에는 유일하게 하나의 제품만이 이러한 방식을 채택하고 있다.

반면 역 참조 방식은 가장 널리 이용되는 방식으로서, 중복된 데이터를 만나면 디듀플리케이션 엔진이 중복되었으니 단순히 포인터를 하나 더 찍고 데이터를 기록하지 않는다. 여기서 포인터를 하나 더 찍는다는 것은 데이터베이스에 이러한 유형의 데이터가 들어가 있다고 하는 것을 저장하는 행위라고 생각해도 된다.

디듀플리케이션에 관한 대부분의 기본 아키텍처인, 이 역 참조 방식에 의해 데이터를 기록하고 그렇게 함으로써 순 참조 방식에서 발생할 수 있는 난제를 해결할 수 있다.

데이터 기록 방식에 관한 논쟁

순 참조 방식과 역 참조 방식에 대해서 재미있는 논쟁이 있다. 바로 순 참조 방식이 복구할 때 더 빠르다고 하는 주장이다. 순 참조 방식의 가장 핵심은 최근 데이터를 기록하는 방식이라는 점인데, 최근 데이터를 기록하였기 때문에 포인터를 찾는데 걸리는 시간이 줄어들어 더 빠른 복구를 할 수 있다는 논리이다. 하지만 데이터베이스에서 해당 포인터를 찾고 이를 디스크에서 읽어 들이는 데는 그다지 많은 시간이 걸리지 않는다. 무엇보다도 포인터를 찾는데 있어 일종의 주소록 역할을 하는 데이터베이스는 시스템의 메모리에 존재하고 그래서 탐색에 소요되는 시간은 인지할 수 없을 정도로 순간에 지나지 않는다.

순 참조 방식과 역 참조 방식의 논쟁에서 또 하나 특징적인 것은 MTBF(Mean Time Before Failure) 즉, 평균 고장 시간이라는 기계적인 측면을 놓고 보더라도 순 참조 방식보다는 역 참조 방식이 우수하다고 할 수 있다.

역 참조 방식은 새로운 중복 데이터 대해 지시자 역할을 하는 포인터(pointer)만 기록하기 때문에 순 참조 방식에 비해 하드디스크가 동작하는 시간이 적다. 일반적으로 고성능 하드 디스크의 경우 120만 시간의 평균 무고장 시간을 보장한다고 하기 때문에 어떻게든 디스크의 안정적인 사용을 위해서는 디스크의 사용을 최소한으로 하는 것이 바람직한 것이다. 또한 하드디스크 하나가 120만 시간을 보장하지는 않으며 실험실 환경에서 시뮬레이션 한 결과이기 때문에 실제로는 MTBF는 디스크 제조업체의 주장과는 달리 현저하게 낮아질 수 있다.

결국 대다수의 분석가들이나 전문 평가기관들은 위와 같은 이유로 역 참조 방식이 순 참조 방식에 비해 우수하다고 말하고 있다.

기술로서의 디듀플리케이션

현재까지의 디듀플리케이션에 관한 개념과 중복 제거 처리 방식, 중복된 데이터의 포인터 기록 방식 등에 관하여 설명하였다.

디듀플리케이션은 데이터가 기록되는 패턴을 보면서 중복되는 데이터를 계속해서 기록하지 않도록 하는 기술로서, 중복 제거를 통해 디스크의 용량 최적화를 할 수 있다. 중복된 데이터를 제거하는 방식에 있어서도 실시간으로 처리하는 방식과 백업 작업이 완료된 이후에 중복 제거 처리를 하는 방식으로 나누어진다. 중복 데이터에 대한 포인터 즉, 지시자를 기록하는 방식에 있어서도 이전에 어떤 데이터 기록이 있을 경우 신규로 들어온 중복된 데이터를 기록하는 방식과 아울러 기록하지 않고 단순히 포인터만 기록하는 방식 두 가지로 나누어 볼 수 있다. 전체적으로 현재 디듀플리케이션의 처리 방식에 대한 전체적인 프레임은 아래 표와 같다.

<표 1>과 같은 디듀플리케이션의 처리 방식에 대해서는 일반적으로 수행되는 경우로서 가상 테이프 라이브러리(Virtual Tape Library: VTL)나 NAS 등에 많이 적용되고 있다. 최근에는 Microsoft Storage Server에서도 이러한 디듀플리케이션 기능이 탑재되고 있으며 또한 CAS(Contents Address Storage) 시스템에서도 디듀플리케이션 기술이 적용되고 있다.
스토리지 컨설팅 그룹인 Taneja Group에 따르면, 2010년까지의 차세대 데이터 보호 기술(Next Generation Data Protection)에 관한 보고서를 통해 용량 최적화 된 기술이 4대 기술 중 하나가 될 것이라고 예측하고 있다. 확실히 이 예측은 신뢰할만 하며 이미 시중에 상당히 많은 제품들이 출시되고 있다.

070904_ii_1.jpg

<표1> 디듀플리케이션 아키텍처 비교표

디듀플리케이션 벤더와 제품들

디듀플리케이션 기술을 적용한 제품들을 보면 상당히 많으며 이들 제품들을 일괄적으로 구분해 보는 것은 의미가 없을 수도 있다. 하지만 약간의 그룹을 만들어 처리 방식을 비교해 볼 수 있다. 디듀플리케이션이 적용된 제품들의 분류는 백업 타겟 시스템으로서 보는 견해, 중복 제거 기능이 있는 백업 소프트웨어, 스토리지 시스템으로 보는 그룹 등으로 구분해 보는 것이 타당할 것이다.

● 디듀플리케이션이 적용된 백업에 대한 정의를 살펴 보자. 백업 타겟(Target)이란 백업된 데이터 또는 그 이미지가 저장될 장치를 의미한다. 반대로 백업해야 할 데이터는 소스(Source)라고 한다. 디듀플리케이션이 적용된 백업 타겟 시스템은 여러 제품들이 있는데, 현재 이러한 제품을 출시하는 벤더들로는 HDS(Hitachi Data Systems), 팔콘스토어(FalconStor), 넷앱(NetApp), 데이터 도메인(Data Domain), 세파톤(Sepaton) 등이 있다. 이들 제품들은 저마다의 고유한 특징을 가지고 있으며 동작하는 방식이 다소 차이가 있다. <표 2>는 이들 시스템의 디듀플리케이션 시스템의 처리 방식을 비교한 것이다.

<표 2>에서 핑거 프린팅(Finger Printing)의 경우 커스텀(Custom) 방식은 별도의 해시 기법을 사용하고 있으며, SHA-1과 MD5의 혼합형태로 독자적인 방식이다.

● 디듀플리케이션이 적용된 백업 소프트웨어

070904_ii_2.jpg

<표2> 디듀플리케이션 기술이 적용된 백업 시스템

디듀플리케이션 기술이 적용된 백업 소프트웨어는 현재 두 제품이 있다. 이러한 백업 소프트웨어에 의한 처리는 기본적으로 인라인(In-line) 방식의 중복 제거 처리라고 할 수 있다. 즉 하나의 백업 스트림 내에서 백업 데이터의 중복 제거와 아울러 데이터 기록까지 동시에 하기 때문에 굳이 인라인 방식인가 혹은 오프라인 방식인가 하는 구분으로 놓고 본다면 인라인 방식으로 분류하는 것이 옳을 것이다.

070904_ii_3.jpg

<그림1> 인라인 방식의 대표적인 사례 - HDS ProtecTIER 개요도

EMC가 작년에 인수한 아바마(Avamar)와 시만텍(Symantec)의 퓨어 디스크(PureDisk)가 있다. 이 두 제품은 모두 백업 소프트웨어로서 백업 소스(Source) 차원에서 중복 제거된 상태에서 데이터를 백업 서버로 보내는 구조를 가지고 있다. 전통적인 백업 소프트웨어라는 측면에서 볼 때 지사나 광대역 네트워크 망(WAN)으로 연결되어 있어 원격지 데이터 백업을 위한 방법으로서 개발된 것이다. 전형적인 서버-클라이언트 구조의 아키텍처를 가지고 있기 때문에 원격지 시스템에 있는 데이터를 중앙의 테이프 라이브러리로 직접 백업을 할 수 있는 것이 아니고 반드시 서버를 거치고, 이 관리 서버로 백업된 데이터를 라이브러리로 백업을 하는 구조이다.

070904_ii_4.jpg

<그림2> 오프라인 방식의 대표적인 사례 - FalconStor SIR

따라서 현재 백업 시스템의 보조 도구로 사용되고 있으며 아직까지 전면으로 내세우고 있지는 않고 있다. 일례로 시만텍의 경우 퓨어디스크 6.2가 현재 나와 있으며 이 제품은 NetBackup Enterprise와는 별개로 동작하고 있다. 이와 관련하여 NetBackup 6.5가 곧 출시되면 기존 NetBackup과 PureDisk가 통합될 것이라고 하지만 백업 타겟을 공유하여 사용할 수 없는 것으로 보아 완전한 통합까지는 아직까지 요원한 것으로 보인다.

● 디듀플리케이션이 적용된 스토리지 시스템

마지막으로 디듀플리케이션이 적용된 스토리지 시스템을 보고자 한다. 중복 제거 기능이 탑재된 스토리지라고 한다면 앞서 백업 타겟에서도 언급한 NetApp의 A-SIS(Advanced Single Instance Storage)가 여기에서도 해당될 것이다. 뿐만 아니라, Microsoft의 Windows Storage Server 2003 R2과 HDS(Hitachi Data Systems)의 CAS 시스템인 HCAP(Hitachi Contents Archiving Platform) 등이 있다.

특히 아카이빙 용도의 스토리지인 HCAP의 경우 중복된 인스턴스를 제거함으로써 디스크의 용량 최적화에 기여하는 의미가 매우 크다고 할 수 있다. 이미지 데이터나 음성 데이터, 동영상 데이터 등의 경우 컨텐츠 보관을 위해 HCAP을 이용할 경우 중복되는 경우가 발생할 수 있다. 따라서 CAS 선정을 위한 옵션으로서도 디듀플리케이션은 중요한 의미를 가진다고 할 수 있다.

디듀플리케이션 제품 이점

그렇다면 디듀플리케이션 제품을 사용하면 어떤 점이 좋을까. 단순히 생각해 보면 스토리지에 저장되는 데이터가 줄어들기 때문에 스토리지를 적게 도입·운용해도 된다는 것처럼 보인다. 그것이 가져다주는 이점은 무엇인가. 디듀플리케이션의 이점은 아래와 같은 것들이 있다.

● 용량 팽창의 문제: 데이터가 늘어나는 것은 필연적인 현상이다. 단순히 용량이 증가하는 것이 차원의 것이 아닌 팽창 내지는 폭증에 관한 문제이다. 이러한 급증하는 데이터 저장을 위해 스토리지를 일방적으로 도입하는 것은 해결이 될 수 없다. 문제는 얼마나 현명하게 보관을 하느냐 하는 것이다. 용량 팽창의 문제를 해결하는 방법은 늘어나는 용량에 맞게 스토리지를 더 구비하는 것과 용량 자체를 줄이는 방법이 있을 수 있다. 디듀플리케이션은 용량 팽창의 문제에서 바로 후자의 방식, 용량 자체를 줄일 수 있는 방법이라고 할 수 있다.

● 더 많은 데이터 보관: 디듀플리케이션의 이점 중 가장 쉽게 생각해 볼 수 있는 것이 바로 ‘더 많은 데이터를 보관’하는 것이다. 데이터 증가에 따라 디스크를 물리적으로 늘릴 수도 있지만 단위 물리 용량 당 데이터를 더 많이 기록하는 방식으로서 전통적으로 압축 저장이 있었다. 이제 디듀플리케이션 기술은 이전의 압축 기술이 제공한 것과는 다른 차원에서 데이터의 패턴을 분석하여 유일한 데이터 세트만을 기록하기 때문에 물리적인 단위 용량 당 더 많은 논리적인 데이터를 기록할 수 있게 된다. 디듀플리케이션 벤더와 제품에 따라 다르지만 대개의 중복 제거 비율이 약 20∼300:1로 보고 있는데 통상 20∼30:1 정도로 생각하는 것이 일반적이다. 300:1 정도의 비율을 기록할 수도 있으나 여기에는 지나친 허수가 들어 있다는 보는 것이 맞다.

● 보관 기간의 연장: 보관 기간의 연장은 디스크 기반의 데이터 보호에서 약점으로 지적된 것을 해소할 수 있는 대안으로 생각할 수 있는 것이다. 현재 디스크와 테이프를 같이 사용하는 절대적인 이유 중 하나가 바로 보관 기간이다. 디듀플리케이션 기술을 활용하여 장기 보관이 필요한 데이터를 중복 제거한 채로 디스크로 보관하게 되면 몇 년 치 데이터를 하나의 스토리지 시스템으로도 보관해 낼 수 있게 된다.

● 복제 서비스의 구현: VTL이 2∼3년 전부터 도입되면서 VTL의 주요 기능 중 하나인 복제(Replication)가 더욱 더 탄력을 받게 된다. 백업된 데이터는 중복된 데이터가 많이 들어가 있기 때문에 중복 제거된 채로 데이터 복제 서비스를 구현하게 되면 보다 적은 대역폭으로 더 빠른 속도로 원격지 복제를 할 수 있게 된다. 디듀플리케이션으로 인한 가장 큰 혜택일 수도 있는 것이 바전력 사용의 절감: 전력 사용에 있어서도 디듀플리케이션은 장점이 많다. 많은 디스크를 사용하지 않기 때문에 전력 사용에 있어서도 절감 효과가 크다. 전력의 과다 사용으로 문제가 있는 경우라면 디듀플리케이션을 이용을 생각해 보는 것도 의미가 있다.

● 백업 타겟의 가용성 지향: 백업 타겟으로 디스크 드라이브를 사용할 경우 일반적으로 가용성이 낮은 스토리지를 사용하게 된다. 그래서 통상 SATA 드라이브나 iSCSI 스토리지를 사용하게 되는데, 스토리지 도입 비용을 디듀플리케이션으로 낮출 수 있다고 생각하기 보다 더 좋은 디스크 드라이브, 이를 테면 FC 디스크를 도입함으로써 안정성을 극대화 하는 전략을 채택하는 것이 바람직하다. 백업도 중요한 IT 업무 중 하나이며 백업 드라이브가 그 만큼 안정성을 확보하게 된다면 백업 시스템의 가용성은 높아질 수 있으며 이에 따라 전반적인 시스템 전체의 가용성까지 높아지게 된다.