HOME : TAG : RSS :

보통은 SATA가 IDE보다 전송속도나 안정성이 우수하다고는 하지만,
파일 데이터를 복원할 때는 얘기가 좀 다르다.

세무사무소에서 주로 쓰는 더존 네오플러스의 경우
실제 로컬 사이즈 5GB 정도의 데이터가 파일수로는 100만개쯤 된다.
고객 중에는 200만개를 넘어 300만개까지 되는 세무사도 있다.
300만개라고 해봐야 17GB밖에 안된다.

데이터가 날라가거나 시스템 마이그레이션하면서 풀복원을 하다보면,
요즘 나오는 SATA 디스크가 장착된 시스템에서 복원을 하면 10시간쯤 걸리는데,
구닥다리 IDE 디스크가 장착된 시스템에서는 1시간 남짓 정도면 끝난다.

일단 복원 프로세스를 수행하는 시스템의 캐쉬메모리와는 별로 상관이 없는 것 같다.

웃긴건 write가 이루어지는 디스크가 내장된 IDE 하드든,
USB 2.0 혹은 1.0으로 연결된 외장형 SATA일지라도,
복원 프로세스가 이루어지는 디스크가 IDE이기만 하면 복원이 빠르다는 것이다.

어쨌거나 가끔 급할 때는,
거의 100% SATA가 달린 고객사 시스템에서 바로 복원을 하지 않고,
3년된 내 회사 노트북(HP nc8230)에 외장하드(SATA)를 붙여서 복원을 하고(한시간 정도)
그 외장하드를 들고 찾아가 고객사 시스템에 복사를 한다.
복사만 하면 100만개는 보통 한두시간 정도 걸린다.
(나는 아무래도 노가다 체질인 것 같다)

세무사 데이터는 파일수가 너무 많아서
하드 통째로 복구업체 맡겨도 복구가 안되는 케이스가 많기 때문에,
나로서는 어쨌든 긴급한 재해복구시 RTO와 RPO가 가장 우수한 방법이다.

그래서 얼마전 새로 구비한 노트북도 IDE 노트북이다.
긴급복원에 주로 애용하던 회사 노트북(HP nc8230)이
지난 4/18일을 기해 3년 워런티가 종료되었고,
그놈이 올초부터 쿨러 없이는 10분도 못버티는데도 회사에서 교체를 안해줘서,
거의 매일 외근나갈 때마다 ZALMAN 쿨러까지 들고가는 엽기 행위를 한동안 일삼다가,
결국 지난 2월 해외출장 가기 전날에 사비로 노트북(HP 2710p)을 하나 샀더랬다.

2710p
태플릿에는 전혀 취미 없는 내가,
아무리 ULV라지만 1.2GHz밖에 안되는 이놈을 선택한 가장 큰 이유는,
3년 동안 2.63kg짜리 nc8230 둘러메고 다니느라 S라인으로 휘어버린 내 등골한테 미안해서,
12인치 와이드임에도 1.68kg라는 대체로 가벼운 중량이라는 점 외에,
특이하게도 요즘 나오는 거의 유일한 IDE 장착 노트북이었기 때문이다.
그 특이한 하드가 1.8인치에 4200RPM 밖에 안되긴 하지만.

어쨌거나 이런 현상의 원인을 하드웨어에는 매우 취약한 나로서는 아직 모르겠다.

몇가지 가설은 이렇다.

1. HP가 원래 노트북을 잘 만든다.
(말 안되는거 안다. 근데 사실 IBM이 중국으로 넘어간 이후로, A/S 포함해서 믿을만한 벤더가 HP 뿐인 것 같다. 그놈의 필리핀인지 싱가폴인지 이상한 조선말 하는 콜센터 아웃소싱만 안하면 딱 좋겠다)

2. 크기는 작고 개수는 많은 데이터들의 I/O는 IDE가 SATA 보다 빠르고 안정적이다.
(이 가설이 '이유'를 설명하진 않는다. 이 가설이 맞아도 이유는 모르겠다)

3. 보통 SATA 디스크는 IDE에 비해 볼륨 사이즈가 훨씬 크기 때문에, 데이터를 Write할 때 전체 볼륨을 seeking 하는데 전반적인 시간이 오래 걸려서이다.

어쨌거나 나는, 늘 불시에 나를 괴롭히는 재해복구 이슈에
숨통을 트이게 해주는 존재가 IDE 하드디스크라는 이유 하나만으로,
SATA 칭송자들과 번번히 감정 싸움을 벌이곤 한다.

아예 초고속 복원 전용으로 시스템을 하나 조립해서 만들고 싶긴 한데,
왜 IDE에서 빠른지 원인 파악이 잘 안되서 스펙을 확정짓지 못했다.

다행히 새로 출시된 더존 회계프로그램은 Sybase DB를 써서 파일수가 1/100 수준이다.
하지만 아직 기존 네오플러스가 대한민국 땅에 10만개나 깔려있고,
전국 9천개쯤 되는 세무사 중 95%가 네오플러스를 사용하고 있으며,
그 중 최소 10%는 더존 통해서 웹백업으로 데이터를 백업 중이다.

그러니 조만간 나의 3년 넘은 노트북을 결국 반납시켜버리고 나면,
사실 긴급 복원 이슈가 발생하면 좀 막막한 상황이다.
사비로 구비한 태플릿에게 이런 중노동을 시키고 싶지 않다.
어지간한 최신 SATA 노트북으로는 이짓 한번 했다가는 바로 블루스크린이다.

이미지 백업을 하지 않는 한, 100만개짜리를 빨리 복원하는 방법을 찾아내야 한다.
백업/복구 사업을 하다보니, 언젠가 여유가 생긴다면,
집요하고 치밀한 "하드웨어" 선수를 내 곁에 두고 싶다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2008/04/23 22:15 2008/04/23 22:15

trackback url :: http://www.mitangel.com/mitangel/trackback/158

댓글을 달아 주세요

  1. kenial 2008/04/25 13:41

    안녕하세요.
    구경만 하다가 처음으로 답글 달아봅니다.

    얼핏 보고 나서는 디스크의 상태 차이(단편화라든가..)라고 생각을 했는데,
    아무리 그렇다고 해도 극단적인 단편화가 아닌 이상은 10배의 성능 차이는 좀 과하고..

    일단 떠오르는 생각은 :

    - sata 지원에 문제가 있다.
    해당 컴퓨터에서 sata 하드디스크의 dma를 지원하지 않는다든가 .. 뭐 이런 문제일까 싶기는 한데, 대형 파일을 복사할 경우에 속도가 크게 차이없다면 이 문제는 아닐 것 같습니다.


    - 복원 작업에서 '뭔가 이상한 방법'을 사용하고 있다.
    말씀하신 '복원 작업'이라는 것이 더존 네오플러스의 백업 프로그램을 말씀하시는건지, 아니면 단순한 파일 복사를 말씀하시는 건지 조금 헷갈립니다. 만약 '특정 프로그램'에서 이러한 상황이 발생하는 거라면 그 작업 프로세스의 백그라운드에서 어떤 작업을 하고 있는지를 검사해보면 좋겠습니다. 하지만 그거는 직접 시스템 앞에 앉아 process monitor라도 돌려봐야 할 문제라서 -_-;

    만약 저 100만개 파일을 단순 복사할 경우에도 속도 차이가 크다면, 이 문제는 아니겠네요.


    문제 잘 해결되시길-

    • 하워드 2008/04/26 00:12

      감사합니다. 복원은 웹백업 에이전트를 통해 이루어지는데요, 이것의 기반이 되는 DataProtector라는 솔루션에서 백업과 복원이 이루어지는 과정은 대강 이렇습니다.

      우선 백업이 이루어지는 과정은..로컬의 백업세트 중에서 서버에 존재하는 파일과 중복되지 않으면서, 이전 백업 버전 대비하여 변동된 파일들을 파악하고, 다시 그 파일 내의 블록을 파악하고, 그것들을 압축, 암호화(AES-128bit)한 다음에, 네트웍 통해 원격지 서버에 전송합니다. (요즘 데이터중복제거라 불리는 것들이 전송 중, 혹은 전송 후에 중복제거 및 압축 등을 시행하는데, DataProtector는 전송 전에 클라이언트에서 미리 이루어집니다. 클라이언트 메모리를 많이 먹는 대신에 트래픽은 줄지요. 서버용 백업 솔루션과는 달리, 다수의 클라이언트로부터 백업을 받아야하기 때문입니다) 이렇게 전송된 블록들이 스토리지에 저장될 때는 90MB나 2000개 단위의 아카이브 세트라 불리는 압축/암호화된 파일 덩어리로 저장이 됩니다.(그래서 서버 통째로 들고가도 데이터를 들여다볼 방법이 없습니다)

      복원은 그 반대겠지요. 우선 복호화-unzip-파일 형태로 재조합되면서 로컬 디스크에 씌여지게 되는데, 트래픽 로그상으로 실제 복원 대상보다 훨씬 적은걸 보면, 전송이 먼저 이루어지고, 로컬에 쓰면서 unzip과 재조합이 이루어지는 것 같습니다. 일단은 복원 받는 시스템의 메모리가 중요하지요. 보통은 100만개 하다가 가상메모리 부족으로 버벅거립니다.

      뭐 대충 프로세스가 이러한데.. 그렇다면 왜 IDE가 장착된 시스템에서 로컬의 IDE 디스크나, USB 통한 외장 SATA로 복원할 때는, 속도가 빠른걸까요. 메모리/가상메모리에서 하드디스크로 정보가 전달되는 과정을 추적해봐야할까요...

  2. kenial 2008/05/05 01:37

    아... 제가 잘못 이해하고 있었나 보네요. '복원 작업이 수행되는 디스크'와는 상관없이 '시스템 디스크(=OS가 인스톨된)'가 IDE일 경우가 더 빠르다는 말씀이시죠?

    만약 그렇다면 실제 데이터를 복원하기 전에 시스템 디스크, 혹은 swap된 가상 메모리에 데이터를 임시로 기록하면서 문제가 생기는게 아닐까 싶긴 한데 ... process monitor를 사용하셔서 복원 작업 프로세스가 어느 디스크를 접근하는지, 혹은 디버깅에 능하고 Windows SDK를 다룰 줄 아는 개발자분이 주위에 계시다면 어떤 API를 호출하고 있는지도 조사해 볼 수 있지 않을까 싶습니다.

    참고로 process monitor는 다음 주소에서 다운받을 수 있습니다 :
    http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx



    'ㅂ')o 해결하시길!

    • 하워드 2008/05/06 21:11

      무지 어려운 말씀을 해주시는군요 :) 감사합니다.

write a comment

[로그인][오픈아이디란?]