효율적인 스토리지 활용「중복제거 기술」

일반입력 :2007/11/15 17:05

ZDNet 편집국 기자

최근 들어 데이터 디듀플리케이션(Data de-duplication)에 대한 관심이 높아지고 있다. ‘디듑’이나 ‘데이터 중복제거’라고 불리는 이 기술은 반복되는 불필요한 데이터를 제거해, 스토리지의 공간을 확보해 나아가서는 스토리지 용량 확충에 대한 요구를 줄이는 방법라고 말 할 수 있다. 그래서 혹자는 '인텔리전트한 압축', '싱글 인스턴스 스토리지'라고도 부른다. 스토리지에 저장할 때 기존 데이터에서 변화가 일어나면 여러 개의 복사본이 생긴다. 하지만 실제로 저장돼 이용되는 것은 하나의 원본 데이터뿐이기 때문이다. 불필요한 데이터는 원본 데이터를 카피 포인터로 변환 할 수도 있다. 즉 변화된 지점만 포인터로 변환하면 불필요한 데이터는 필요하지 않다.예를 들어 일반적인 이메일 시스템은, 같은 1MB파일을 100군데 첨부하여 발송을 한다고 하고, 이 시스템이 백업이나 아카이빙을 한다고 하면 100MB의 공간이 필요하다. 각각에 중복된 파일이 100나 겹치기 때문이다.하지만 데이타 중복제거를 사용하면, 실제로 1개의 첨부 파일만 저장이 된다. 따라서, 100군데 발송을 한다고 해도, 스토리지는 1MB의 공간만 필요하다. 데이터 중복제거의 다른 이점은 스토리지 확장 시 적은 스토리지 용량을 요구 하므로 경비 절감을 할 수 있다. 더 효율적인 면은 데이터의 장기간 보유 하는 시간에 따른 RTO(Recovery Time Objectives)를 제공 하므로, 테이프 백업을 줄여 준다. 또한, 데이터 중복제거는 WAN상에서의 원격 백업, 복제 및 장애 복구에 대한 데이터양도 줄여 준다.데이터 중복제거는 일반적으로 파일, 블록, 심지어는 비트(bit)단위에서 동작이 가능하다. 파일 중복제거는 2중 파일을 제거 하지만, 이 방법은 그다지 효율적이지는 않다. 블록과 비트 중복제거는, 파일 내에서 각각의 블록 또는 비트가 단 한번 저장하는 것으로 보인다. 많은 양의 데이터는, MD5이나 SHA-1등의 해쉬 알고리즘을 사용해서 처리된다. 이 프로세스는 인덱스에 축적되는 각각의 조각에 대한 변환된 데이터의 번호를 생성한다.따라서 만약 파일이 업데이트되면, 변경된 데이터 만이 저장된다. 다시 말해, 만약 문서 또는 프레젠테이션의 몇 바이트가 변경되면, 변경된 블록 또는 바이트만이 저장되며, 변경 된 파일은 완전히 새로운 파일로 대체 되지는 않는다. 이러한 현상은 블록과 비트 중복제거의 효율성을 높이는 것이다. 데이터 중복제거의 잠재적 과제 ‘해쉬의 충돌’그러나 보다 많은 프로세싱 파워를 필요로 하고, 각각의 조각을 트래킹하기 위해서, 지속적으로 대용량 인덱스를 이용한다. 따라서 정의된 데이터의 요약인 해쉬(Hash)의 충돌은 중복제거의 잠재적인 문제이다. 데이타의 조각이 해쉬 번호를 받을 때에는, 그 번호는 다른 기존의 해쉬 번호의 인덱스와 비교된다. 만약 이미 그 해쉬 번호가 인덱스에 있으면, 데이타의 조각은 복제로 간주 되어 다시 저장 할 필요가 없다고 판단한다. 그렇지 않으면, 새로운 해쉬 번호는 인덱스에 추가되어, 새로운 데이터가 저장 된다. 드문 케이스이지만, 해쉬 알고리즘은, 2개의 다른 데이터에 대해서 같은 해쉬 번호를 만들 수도 있다. 해쉬 충돌이 일어날 때에는, 시스템은 새로운 데이타를 저장하지 않는데, 이유는 이미 그 해쉬 번호가 인덱스에 존재한다고 알기 때문이다. 이것은 '폴스(false) 포지티브(positive)라고 불리며, 데이터의 데이타 손실을 가져 올 수도 있다. 몇몇 벤더들은 해쉬 충돌의 가능성을 낮추기 위해서 해쉬 알고리즘을 결합하는 경우가 있다. 또한 다른 벤더사들은 데이타를 식별하고, 충돌을 방지하기 위해서, 메타데이터(Metadata)를 조사하는 방법을 사용하기도 한다. 실제로 데이터 중복제거는 기존의 압축이나 델타 디퍼런싱(Delta Differencing)등과 같은 데이터 정리 형식과 연계하여 사용한다. 위의 3가지 테크닉은 스토리지 스페이스 사용의 최적화에 효율적이다.델타 디퍼런싱의 장점델타 디퍼런싱은 프로세스를 보다 효율적으로 사용하게 하는 백업 기술이다. 이 기술은 프로세스는 백업 파일 세트를 조사하고, 마지막 백업 후 변화 되는 블록이나 바이트의 위치를 찾아내는 것이다. 전체 파일 셀이 아니라 변화된 데이터를 LAN이나 WAN을 통해 타겟팅 된 지역의 VTL이나 스토리지에 백업 된다.델타 디퍼런싱의 가장 큰 장점은 시간 절약이다. 대기업의 데이터는 하루에 몇 퍼센트만 변화가 일어난다. 안정성을 위해 풀 백업은 당연하지만 통상적으로 이 작업은 귀찮고 시간이 많이 걸리는 작업이기 때문에, 많은 기업들은 풀 백업을 주말이나 연휴 등으로 연기 한다.따라서 변화 된 데이터만 모으고 보존 하는 작업은 LAN이나 WAN의 대역폭을 독점 하지 않고도 빠르게 백업을 할 수 있어 백업을 자주 할 수 도 있다. 적은 데이터양의 백업으로 스토리지를 더욱 효율적으로 활용 할 수 있고, 풀백업의 반복으로 인한 스토리지의 용량을 낭비 하는 사례도 줄 일 수 있다. 예를 들면, 데이터 센터에 있는 테라바이트의 스토리지에서 하루에 변화 되는 데이터의 양은 단지 몇 기가바이트 일 것이다. 이러한 상황에서 풀 백업을 하면, 몇 시간 또는 며칠이 걸릴 수 있다. 하지만 델타 디퍼런싱 백업을 할 경우에는 데이터의 변화가 일어 날 때 단 몇 분 또는 몇 시간 내에 처리 할 수 있고, 하루에 몇 번씩도 백업이 가능하다.@