티스토리 뷰
일반 사용자는 RAID라는 개념부터 생소 할 수 있다. 쉽게 말해서 일반 가정용 PC에는 RAID라는 개념이 안들어갔으니까...하지만 최근 메인보드에 ich9r이라는 칩셋을 통해서 레이드(raid)와 비슷한 기능을 할 수 있다고 한다. 그럼 우선 , 레이드(RAID)란 무엇인지부터 봐야겠다.
컴퓨터의 성능을 끌어올리기 위한 방법 중에 많이 이용되고 있는 방법으로 하드 디스크의 RAID(Redundant Array of Independent Disks) 라는 기법이 있습니다. 이야기를 들어보신 분들도 많으시리라 생각합니다. 쉽게 생각해서 하드 디스크를 병렬로 배열하여 사용하는 기법이라고 생각하시면 됩니다. 보통 하나의 하드 디스크에 하나 혹은 여러 개의 파티션을 나누어 C, D 와 같이 드라이브 명을 붙여서 사용하곤 합니다. 하지만, RAID 기법을 이용하면 2 개의 하드 디스크가 C 드라이브 하나로 사용되기도 하고(RAID 0), 두 개의 하드에 동일한 내용이 그대로 저장되기도 합니다(RAID 1). 이렇게 사용하는 목적과 이유는 무엇일까요? RAID 는 몇 가지 규격으로 구성 방식이 정해져있고, 이 규격은 속도 향상 혹은 안정성에 목적을 두고 정해져있습니다. 그 중에서도 많이 사용되는 것은 RAID 0 과 1, 0+1 그리고 5 번이 많이 이용되고 있습니다. 이 중에 RAID 5 의 경우 서버용 고가 RAID 하드웨어 정도에서만 지원을 해주므로 여기서는 언급을 피하고, RAID 0 와 1 을 설명하도록 하겠습니다. RAID 0 은 스트라이프(Stripe or Striping)라고 불리는 기술로, 두 개 이상의 하드 디스크를 병렬로 연결해서 하나의 하드 디스크처럼 이용하는 기술입니다. 예를 들어 A, B, C 라는 하드 디스크가 RAID 0 으로 연결되어 있고 137412231 라는 데이터를 저장하려고 한다면 처음의 1 은 A 하드 디스크에, 그 다음의 3 은 B 하드 디스크에 저장되는 식입니다. 결국 A 는 142 가 저장되고 B 는 313 이 저장되며 C 는 721 이 저장될 것입니다. 그런데, 이상하게 웹 상에서 찾아본 RAID 관련 문서들에는 이렇게 병렬 연결을 했을 때 그냥 하나의 디스크보다 저장 속도가 더 빠른 이유를 설명한 것이 보이지 않더군요. RAID 0 을 쓰는 이유는 바로 하드 디스크의 접근 속도(Access Time) 때문입니다. 실제로 데이터가 컴퓨터 내부에서 전송되는 속도보다 하드 디스크에 저장되는 속도가 느리기 때문이 이를 상쇄하기 위해 병렬 연결을 고려하는 것입니다. 게다가 하드 디스크는 원형의 판이 고속으로 회전하고 있고 그 표면의 전기 신호를 읽거나 쓰는 처리를 하는 원리로 이루어져 있는데, 이런 처리 속도보다 회전 속도가 더 빠른 관계로 실제 하드 디스크는 데이터가 인접하게 저장되질 않습니다. 하나의 원을 원중심을 기준으로 8 등분하여 각 등분마다 1 부터 8 까지의 번호를 주었을 때, 실제 데이터는 1, 2, 3, 4, 5, 6, 7, 8 와 같이 순차적으로 저장되지 않고 1, 4, 7, 2, 5, 8, 3, 6 와 같이 일정한 간격(이 예는 2 개를 건너띄는 하드 디스크라고 가정함)을 두고 저장을 하게 됩니다. 그러므로 당연히 뛰어넘는 거리 만큼의 처리 시간이 지연이 되는 것입니다. 그것을 만회하기 위해 처리 지연이 일어나는 동안 다른 하드 디스크에 저장을 시킬 수 있게 고안된 것이 RAID 0 입니다. 이 방법은 당연히 속도 향상이 이루어지지만 두 개의 하드 디스크를 연결한다고 해서 속도 향상이 두 배로 이루어지지는 않습니다. 통상적으로 두 개의 하드 디스크를 연결할 경우 150% 정도의 속도 향상을 기대하시면 됩니다. 아울러, 하나의 하드 디스크라도 먹통이 되면 모든 데이터를 유실할 수 있고, RAID 구성 자체가 논리적인 문제가 일어날 가능성도 배제할 수 없습니다. RAID 0 와는 달리 RAID 1 은 미러(Mirror or Mirroring)라고 불리우는 기술로, 두 개 이상의 하드 디스크를 병렬로 연결해서 똑같은 복사본을 생성하는 기술입니다. 예를 들어 A, B 라는 하드 디스크가 RAID 1 으로 연결되어 있다면 항상 A 와 B 는 동일한 내용을 저장하고 있습니다. 이 경우 속도 향상은 기대할 수 없지만, 항상 동일한 하드 디스크를 1 개 이상 확보할 수 있기 때문에 물리적인 에러 발생시에 해당 하드 디스크만 교체하는 것으로 문제 해결을 할 수 있는 장점이 있습니다. 하지만, 완전히 동일한 하드 디스크가 2 개가 필요하므로 저장 공간이 많이 소비된다는 것이 단점이며, 속도 향상에 별다른 도움이 되지 못한다는 것도 사실입니다. 최근에는 이 두 방식을 혼용하여 RAID 0+1 이라는 방식을 많이 이용하고 있습니다. 스트라이프와 미러를 적절히 조화한 방식으로 속도 향상과 복사본 생성이라는 두 가지 목적을 동시에 어느 정도 구현할 수 있기 때문입니다. 현재 RAID 0 의 경우 소프트웨어나 하드웨어 적으로 쉽게 구현할 수 있습니다. Windows 에서 기본적으로 RAID 를 소프트웨어 적으로 구현할 수도 있고, 저렴한 RAID 카드를 이용해서 구현할 수도 있습니다. 혹은 고가의 전문 RAID 카드로 안정적으로 운용할 수도 있습니다. 이 때, 하드웨어 적인 구현을 할 경우 속도가 더 빠른 것은 아니라고 알려져있으며, 대신 안정적인 전송 속도와 논리적인 오류 발생이 거의 일어나지 않는다고 합니다. 그러므로 가볍게 개인용으로 사용하실 분들은 전문 RAID 장비를 구입하지 않으시더라도 손쉽게 Windows 의 기본 소프트웨어 RAID 를 이용하시거나 저가의 RAID 장비(3~5 만원 선)를 구입하셔서 구성하시는 것이 좋겠습니다. 컴퓨터로 삽질만 할텐가 사이트 참고 |
위 내용을 가지고 이해할 분이라면 읽지도 않았을 거라고 생각한다. 왜냐면 레이드(RAID)를 몰라서 읽었는데...조금 힘들게 기술되어 있으며, 물론, 레이드(RAID)를 아는 분이면 읽지도 않았을 것이니까.....
정말 쉽게 RAID를 말하면......일반 PC에서 사용하는 하드디스크가 망가지는 것을 대비하여 디스크를 2개 이상 구입하여 내용물(데이터)을 복사하여 한개의 디스크가 깨져도 잘 사용할 수 있도록 하는 것이다. 물론, 기능면을 고려하여 레이드(RAID)의 종류를 선택하게 되며 여기서 말하는 RAID10은 많이 사용하지 않으며 일반적으로 RAID1(미러링), RAID5가 많이 사용된다.
그래서, RAID10과 RAID5의 비교내용을 살펴보면...
Raid5의 경우 3개이상의 하드를 Raid구성시 쓰는 방식입니다 대신 3개를 사용할경우 Raid가 되고 속도가 증가하나 70%가량의 용량만 활용하게 되어있는 다수의 하드를 묶기위한 레이드 기술입니다 그러나 3개 또는 4개의 하드를 Raid로 묶게 될경우 하나의 파일만 엑세스 하는 경우도 3~4개의 하드가 연산하므로 그에 따른 속도증가는 혁신적 이라고 볼수있죠
Raid10의 경우 Raid1과 Raid0의 혼합형태(즉 1+0)의 형태라고 보실수 있습니다 즉 Raid0을 사용하면 속도가 증가하는 대신 하드 디스크가 자주 망가집니다 0을 사용하면 속도는 떨어지는대신 안정성 보장입니다 즉 이의 중간상태로 보시면됩니다
그럼 RAID 0, 1, 3, 4, 5의 그림 구성을 보겠다.
우선 이번 포스팅은 레이드(RAID)에 대한 내용 정리가 아니고 신기술인 RAID10에 대한 내용으므로 RAID10에 대해서 적어보겠다.
RAID 10
RAID 10의 주요 이점은 RAID 0의 성능상 이점과 RAID 1의 내결함성 이점을 결합한 것입니다. RAID 10은 한 드라이브에서 장애가 발생할 경우 안전한 데이터 사용을 보증합니다. 하나의 하드 드라이브에 오류가 발생하면 데이터 무결성에 영향을 주지 않고 모든 데이터를 다른 미러에서 제공합니다. 디스크 장애가 발생하면 컴퓨터 시스템은 생산성을 극대화하기 위해 최대 생산성을 유지하면서 작동하게 됩니다. 데이터 내결함성은 고장난 드라이브를 교체함으로써 복원할 수 있습니다. 여러 디스크에서 동시에 데이터를 읽을 수 있으므로 RAID 10 어레이의 성능은 단일 드라이브 성능보다 높습니다. 2 디스크 RAID 0에 비해 RAID 10은 읽기 성능이 더 우수합니다. 그 이유는 나머지 미러 중 하나로부터 데이터를 읽기 때문입니다. 그러나 데이터를 어레이에 완전히 기록해야 하므로 쓰기 성능을 약간 저하됩니다. |
레이드10은 10이라는 숫자가 1과 0의 조합인 것처럼 레이드0의 속도적인 장점을 살리고 디스크에러(망가짐)의 단점을 RAID1으로 안전성을 보강하는 것이라고 생각하면 쉽다. 우리는 알기 쉽게 레이드(RAID) 10을 이해하려면 RAID0+1 (레이드0+1)을 보면 알게 된다.. 그 이유는 아래와 같은 그림으로 설명하면 쉽게 이해가 되지 않을까 생각된다. 레이드0+1은 레이드0한후 다시 그것을 레이드1하는방식으며 레이드10(RAID10)은 반데로 RAID1방식으로 테이터를 미러링하고, 이를 다시 RAID0의 Stripping하는 방식이다. RAID0+1과 비슷한 방식으로 보이지만(순서만 반대), 성능이 더 뛰어나다.
레이드0+1(RAID0+1)방식의 그림