레이드에대해 이야기해보겠습니다.
본래 좀 장편으로 쓸라했는데 귀차니즘으로 이론은 다생략합니다..;
써놓은건 있는데, 요청이 많다면 따로 올리도록 하겠습니다.
궁금하실만한 내용 위주로 FAQ형식같이 들어갑니다.
고레벨의 내용은 거의 없고, 우리같은 양민들의 실환경에 맞춰서입니다~
Q1. 레이드 컨트롤러를 선택해 주세요.
사례예) 안정적인걸로 ,10만원이하, 싼거, 4채널...등등
A1.
답변가치가 없는 질문으로..이건 다들 속고계신겁니다.
크게 컨트롤러는 3부류로 나뉘어집니다.
첫째로, ICH, ALI, NVRAID와 같이 보드칩셋에 속한형.
둘째로, Promise, Highpoint, Silicon Image 등의 싸구려 칩셋형,
셋째로, 3Ware, LSI Logic, Adaptec, Areca등의 자체 프로세서와 캐쉬메모리를 가진 형.
첫째와 둘째는 소프트웨어 방식입니다.
소프트웨어방식이 뭐냐하면, 레이드컨트롤러라 불릴 자격이 없음을 말합니다.
그냥 디스크를 달수있게끔, 과거 IDE확장카드와 동일한 역할을 할뿐이라 보시면 됩니다.
여기에 자체 바이오스나 소프트웨어를 두어 어레이구성과 셋팅이 가능한 정도지요.
달린 칩셋은 레이드컨트롤러 칩셋이 아니라 SATA나 IDE의 채널 컨트롤 칩셋이라 보시는게 옳습니다.
실제 사용시에는 아무일도 안한다는것이기 때문에 모든 작업은 CPU가 빡씨게 돌아줘야 합니다.
레이드가 운용될려면 누군가는 산수를 해줘야하니까요.
만약 패리티가 사용되는 고레벨로 묶으면 CPU는 프로그램 실행은 못하고 데이터 유효성검사만 하느라 죽어나게되죠.
이때문에 대부분이 무패리티인 0,1,10 그리고 모사의 칩셋은 성능은 내 알바 아니지만 5도 되긴된다...라는 괴스펙을 가지고있죠.
그런데 자체 바이오스에서 레이드가 가능하므로 어쨌든 레이드컨트롤러가 아느냐~ 라는 분이 계실텐데,
죄송합니다만 이 기능은 윈도우가 기본 지원합니다.
그것도 최근이 아닌 NT 4.0 부터이니 아주 오래된 기능이죠.
다시말해 기본 보드에 2채널 주어지는 IDE로도 레이드구성이 가능하다는 말입니다.
물론 NTFS에 한합니다만...
셋째는 하드웨어 방식입니다.
그 유명한 스카시와 동일한 방식이자 RAID의 본모습이라 보시면 됩니다.
스카시의 CPU점유율이 낮은 이유는, 모든 처리를 스카시 컨트롤러에 달린 CPU가 하기 때문이죠.
IDE나 SATA도 똑같이 제작한다면 동일한 특징을 가집니다.
자체프로세스를 사용함으로 고레벨의 구성도 가능하죠.
다만 컨트롤러의 가격에서 토나옵니다.
결론은 첫째, 둘째군에 속한 컨트롤러(?)를 사용하고 계시면서,
이들간 칩셋을 비교하고자 한다면... 막말로 꼴통끼리 서로잘났다고 싸우는모습이 맞는말입니다.
Q2. 혹시 레이드가 풀리지 않을지? 안정성은?
A2. 레이드가 풀린다는말은 어디서나왔는지 모르겠는데,
요즘 디스크들은 알아서 에러검출을 하기때문에,
잘못된 기록으로 일어나는 데이터오류는 아주 재수가 없는이상 없다고 봐도 됩니다.
과거 에러검출이 없던 시절에는 레벨 0은 엄두도 못냈고, 레벨2, 3가 주로사용되었는데,
이제는 에러검출기능이 있으므로 당연히 레벨2,3은 세상에서 사라졌지요.
어쨌든,
레이드를 구성하는 이유는 무언가 이득을 얻기 위함인데,
흔히 업계에서는 레이드를 가난한자들을 위한 기술이라 칭합니다.
이점이라하면 흔히 3가지를 말하죠.
첫째가 싸게 용량이 큰 디스크를 얻기 위함이고. (250G*2가 500G*1보다 싸죠.)
둘째가 성능상의 이점을 얻기 위함,
그리고 셋째가 사고발생시 유연한 대처방안을 마련하기 위함입니다.
아시다시피 레벨 0은 셋째의 조건을 충족시키지 못하므로,
명확히말하면 레이드라 할수 없습니다.
현업에서는 레벨0을 불완전한 레이드라는 의미로 R을 빼버리고,
First Aid라는 말을 가져와 AID라 비하해 불리워집니다..
잠깐 샜는데,
결과적으로 최근하드에서 어레이가 풀리는경우는 극히 드뭅니다.
아주 그냥 옴팡지게 재수가 없거나,
디스크가 할아버지가되어 오류검출을 깜빡해서 쉽게말해 밀려썼거나...
이런경우가 아니라면 말이죠...
그럼 위험성이라는건 뭐냐하면.. 바로 디스크가 죽어버리는겁니다.
레이드의 사고대책이란건 바로 이경우를 말하는거고요.
위에서 말했다시피 옴팡지게 재수없지 않는한 맹세코 안풀립니다.
단지 디스크가 하나 사망하시면 레벨0으로 묶인 멀쩡한 디스크의 데이터도 하늘나라죠.
하드디스크 내구성이 좋아지고 있기는 하나...디스크는 언제죽을지 모르는 폭탄인건 여지없고,
레벨0구성으로 사실 일반사람들에게 그렇게 큰 이점은 없기때문에,
개인적으로 권장하고싶지는 않습니다.
나중에 일터지면 복구안되냐고 Q/A에 올리지들 마시고들..;
Q3. 개인이 레벨0구성시 얼마나 체감속도를 얻을수 있을지?
A3. 몇몇 특수한 작업을 하는사람이 아니라면 큰 이득은 못봅니다.
사실상 큰 변화가 보이는 부분은 두가지 뿐입니다.
'레이드로 묶인 디스크에서 묶인 디스크로의 파일복사시'
'찢어지게 가난해 저용량램을 운용할때 스왑하드로 사용'
굳이 추가하자면 '벤치마크 프로그램등에서 숫자놀이의 뿌듯함.'
반론을 제기하실분이 많겠지만. 현실이 이렇습니다.
솔직히 스왑시는 Seek과 관련이 더 있기는 합니다만...
설명드리기전에,
최근 추세로 대충 계산하기 좋게 단일하드의 전송률을 50M,
레벨0으로 묶인 어레이의 전송률을 100M이라고 가정하죠.
먼저 파일복사시 묶인디스크에서 단일하드, 혹은 반대로 복사시..
죽어도 50M이상 나올수 없습니다. 이건 당연한 상식이죠.
온라인게임에서 어떤쉑이 모뎀이야? 와 같은이유입니다.
묶인디스크에서 묶인디스크의 복사는 100M...
하지만 읽기도 하고 쓰기도 해야하므로 50M은 읽고 50M은 씁니다.
단일이라면 25M/25M이 나오므로 이론적으로 2배의 이득입니다.
그러나 아래부터는 조금 다른 이야기가 나올겁니다.
OS?
벤치마크 수치대로 전송률 100M 하드라 가정하고,
처음 윈도우 가동시 200M의 메모리가 올라간다 가정하죠.
레이드의 숫자놀이로는 윈도우 2초만에 떠야합니다.
하지만 현실적으로 불가능한 일이죠.
단일하드면 50M니까 4초만에 떠야합니다. 역시 말도안됩니다.
시스템이라는건말이죠.
데이터를 읽기만 하는게 아닙니다.
읽어서 뭔가 처리를 해야 시스템이 굴러가는거라는걸 기억해두시길...
그리고 읽을 데이터가 항상 하드가 읽기좋게 순서대로 배치되어있지도 않다는것도 함께요.
개인적으로 15k 아틀라스와, 10k구형 DDYS를 사용합니다만,
전송속도의 차이는 전자가 초당 100M 후자가 초당 20M 입니다.
풀이하자면 전송속도가 요즘 IDE타입의 1/3 수준입니다만...
실제로는 파일카피를 제외한 실사용에 전혀 느리다는 느낌이 없습니다.
오히려 4ms대의 접근시간덕에 더 빠르죠.
게임?
게임의 실행구조는 디스크에서 데이터를 읽고 메모리로 올립니다.
그이후는 메모리에서 놀지 디스크에서 놀지 않습니다.
처음실행시도 OS와 마찬가지로 디스크에서 무조건 읽기만 하는게 아닙니다.
읽었으면 처리를해야죠. 이건 디스크가 아닌 CPU랑 다른 장치들이 할일인데,
결과적으로 1초에 100M씩 처리해서 쫙쫙 올라가는 게임은 생애에 본적이 없습니다.
그리고 작업관리자에서볼땐 몇백메가씩 올라가있지만,
그부분중 상당수는 이미 메모리에 적재된 윈도우 라이브러리가 많습니다.
이건 메모리->메모리로의 복제죠.
중간로딩역시 100M이상 로딩하는게임은 흔치도 않거니와,
처음로딩과 마찬가지로 중간로딩도 100M씩 빨아주는 게임은 본적이 없습니다.
게임에서 스왑때문에 레벨0이 효과가 있다 하신다면 차라리 램을 증설하겠습니다.
하나 더 말하면 스왑에서는 최대속도가 아니라 탐색시간이 더 중요합니다.
그밖에?
인코딩..이거역시 말할필요가 없습니다.
CPU가 초당 100M씩 인코딩을 해줘야 디스크의 위력이 발휘되죠.
다만 대용량파일을 읽거나, 저장시는 설정에따라 이득이 있을수도 있겠죠.
하지만, 1G짜리 파일이라고 1G를 메모리에 한번에 올리지 않습니다.
버퍼등을 이용해 조금씩 읽고, 조금씩 저장하고 지나간부분은 메모리에서 버립니다.
한번에 드르르륵 읽어서 저장할때 드르르륵 저장하면 레벨0의 효과가 200% 나겠습니다만...
이렇게 구현이 된다하면 메모리는 한계가있기때문에 윈도우가 먼저 뻗겠죠.
그럼 레벨0의 효과를 최대로 낼수 있는 상황은.
쓸모없는 데이터들의 짬시킬만한 공간,
3D계열, 동영상작업과 같이 기타 대형 작업을 할때의 꺼냈다 뺐다를
용이하게 하게끔 만들어둔 임시(Temp) 디렉토리.. 등으로 정리가 됩니다.
제 개인적으로 평가하기로,
일반적인 소비자(인터넷하고 게임하고..이것저것잡동사니 하는...)의 입장에서 사용할때의
레벨0의 이점은 10% 미만으로 보여집니다.
그대신 이를위해 적지않은 위험성을 짊어지고 가는거죠.
마케팅적인 뜬소문이나 단순한 숫자놀이에 현혹되지 마시길...
그리고 HD-Tach등의 프로그램으로 흔히 성능을 측정하시는데,
이건 읽기/쓰기 성능이지 실사용하고는 너무나도 떨어진 수치를 보여줍니다.
숫자놀이에 추가하자면,
Burst는 전혀 의미가 없는 수치입니다 Average만 참고로 보시길...
Burst라는게 순수 디스크의 꾸준한 성능보다는 고작 8~16M의 버퍼램빨을 받아 나오죠.
또한 프로그램은 보통 초단위로 그래프를 갱신해 보여주지만,
디스크는 1초에 한번씩 데이터를 전송하는 구조가 아니니까요.
이번초에 190M가 나와도 0.9초전에 10M나왔을지 누가 알까요?
차라리 IOMeter라는 프로그램을 추천드립니다.
File Server Access Pattern 이라고... 엄청나게 IO요청을 해주는 테스트인데,
쉽게말해 단순한 파일카피 상황이아닌, 개같은상황에서 얼마나 속도를 내주냐를 측정해주죠.
이 개같은 상황은 자신이 원하는데로 설정이 가능합니다. 이 설정이란게 좀 어렵지만요.
다만, 극악으로 설정할경우 결과는 좌절마크 신버전 나왔을때보다 더할겁니다.
아니면 윈도우에 기본으로 탑재된 작업관리자에 IO Read Bytes, Write Bytes 를 참고하시는걸 추천드립니다.
오히려 잡프로그램보다 자신의 시스템의 실사용시 IO능력을 체크하는데는 가장 좋습니다.
참고로 디스크의 진정한 체감성능의 척도는,IO Read Bytes, Write Bytes가 아니라,
IO Reads / IO Writes, 즉 요청건수를 얼마나 빠르게 처리하냐입니다.
Q4. 어레이 풀렸어요~
A4.
축하합니다~ 당첨되셨습니다 *-_-* 라고밖에 드릴말이 없습니다.
레이드상태에서는 디스크복구 프로그램따위로 해결봐질 문제가 아닙니다.
디스크의 데이터뿐만 아닌 어레이볼륨이 망가져버리기때문에 하나라도 많은 데이터를 건지는게 살길이죠.
따라서, 목숨을 걸고 사수해야할 자료라면 업체를 가셔야합니다.
다만 가격은 엄청나니 감수하셔야합니다.
가격은 업체마다 다릅니다.
대충 평균잡아 디스크당 20만원안팎인데 레이드는 나눠저장되는 구죠죠.
4개를 묶었다면 4개를 모두들고가야합니다.
곱하기 4 하니 벌써 80만원이네요.
그런데 미안하게도 레이드는 단일하드때와 다른 별도의 복구작업이 들어가야 하므로...
80만원+@ 가 최종적으로 나옵니다.
따라서~ 경우에따라 데이터는 모두 버리는게 현명한 선택이 될수도 있겠습니다.
참고로 저는 겁주는거 절대 아닙니다;
Q5. SATA(I, II)와 그놈의 NCQ, 핫스왑!!!
A5.
주관적으로 SATA의 탄생은 환영합니다.
하지만 I->II로 인한 성능향상이나 RAID, NCQ의 마케팅적 이야기들은 환영하지 않습니다.
결과론적으로... 질문게시판 가보시면 흔히 보입니다.
Q/A I->II의 인터페이스 향상으로 디스크 속도가 빨라진줄 아시는분이 많으며,
SATA환경에서만 RAID가 되는줄 아시는분도 많습니다.
NCQ덕분에 성능향상이 있을거다 라고 기대하시는 분도 많지요.
하지만 현실은, I->II 덕문에 그나마 반쪽이던 SATA규격이 완성은 되었습니다만,
오늘날의 디스크속도는 60M 안팎에 그치고있으니 야구나 영화매니아가 아닌이상 별볼일없고.
RAID야 IDE환경에도 가능했으니 역시 말할가치도 없고...,
덕분에 어설픈 RAID를 흉내내는 싸구려칩셋 회사만 돈벌고있는 결과가 나고있죠.
그리고 NCQ라....
이건 십수년전 SCSI-2규격에 적용된걸 살짝 Native라는 이름으로 개량하여 최신기술인양 왜이렇게 광고하는지...
큐잉의 효과를 보려면 아주 말도안되는양의 I/O가 발생해야 하는데,
개인환경에서는 일어날수조차 없는일이죠.
과거 IDE시절 아범에서 NCQ와 비슷한 TCQ가 적용된 디스크를 판매한 적이 있는데 이미 역사속으로 사라졌죠,
뭐 이건 있으나마나 한기술...
핫스왑은 더 코미디...가 되겠네요.
개인이 핫스왑베이를 별도 구입해 사용하는 경우는 극히 드물지만,
설상 사용한다고해도 사용하기는 힘듭니다.
왜냐하면, 대부분 사용하는 보드내장이나 싸구려 칩셋 컨트롤러는 대부분 핫스왑을 제대로 지원하지 못하니까요.
광고문구에는 나와있지만, 이건 SATA2의 스펙이지 지네 카드스펙은 아니죠.
뭐 궁금하시면 직접 해보셔도 좋습니다. 제대로 붙으면 운좋은거고...
다만 아이러니한것은,
제대로 지원도 못하는 싸구려카드들은 윈도우상에서 하드웨어 안전 제거라는 아이콘을 보여주며 신경쓰이게하는데,
제대로 지원하는 고급카드들은 쓸놈은 알아서 쓰겠지 하는건는지 아예 이 아이콘이 안나오는 경우가 많습니다;
이놈의 싸구려들은 설마 진짜로 쓰겠냐? 라는건지 뭔지...
마치며...
결론은 간단합니다.
레이드 구성은 단순한 숫자놀이일 뿐이라는거죠.
일반적은 컴퓨팅 환경에서는 도움이 되지는 못할망정 해를 끼칠 가능성만 농후합니다.
디스크의 최대전송률은 어디까지나 순차배열된 파일 카피시에만 해당되는거고.
실제상황에서는 오만가지경우가 다있기때문에 최대전송률은 절대 나올수 없습니다.
개인적으로 실제로 레이드를 구성할 필요가 있다면,
오늘날 사용할만한 가장 적당한 구성인 레벨 5를 추천드립니다.
뭐 여유가 있으시다면 더 좋은 컨트롤러로 레벨 6도 좋습니다.
물론 그에맞는 투자가 있어야겠지만요....
그럼...