RAID
RAID (Redundant Array of Inexpensive/Independent Disk)는 저장장치(디스크) 여러 개를 묶어 고용량,고성능 저장 장치 한 개와 같은 효과를 얻기 위해 개발된 기법이다.
RAID는 여러개의 하드디스크를 함께 사용하는 방식을 말한다. 속도를 위해 함께 사용 할 수도 있고 안정성을 위해 함께 사용 할 수도 있고 둘다를 추구할 수도 있다.
RAID-0
속도 추구만을 위한 레이드 구성이다. 단순히 하드 여러개에 데이터를 분산시켜서 한꺼번에 입출력을 수행하는 것이다. 이를 스트라이핑(Disk striping) 기술이라고 한다.
예를 들면 1~10까지의 숫자를 저장하는데, 하드1에는 1 3 5 7 9, 하드2에는 2 4 6 8 10을 저장한다. 1~10까지의 숫자를 읽고자 한다면 두개의 하드에서 동시에 읽게 되므로 이론적으론 하드가 한개 있는 것 보다 두배의 속도로 읽을 수 있는 것이다.
하지만 데이터가 분산되어 저장되기 때문에 하나의 하드에만 문제가 생기더라도 나머지 하드들까지 사용 불능해 진다.
RAID-1
안전성 추구만을 위한 레이드 구성이다. 2개의 하드가 있다면 2개의 하드에 완전 같은 데이터를 저장하는 것이다. 미러링이라고도 부른다.
이렇게 해 두면 속도는 하드 한개만 사용하는 것과 같고 용량은 두배나 들게 되지만, 하나의 하드에 문제가 생기면 나머지 하드를 엎어치면 되므로 안심하고 사용할 수 있다.
RAID-2
디스크들은 스트라이핑 기술을 사용하여 구성하고, 오류정정을 위한 Hamming code ECC(Error Check & Correction) 정보를 사용한다. 최근 디스크드라이브들은 기본적으로 오류정정 기능을 가지고 있으므로 요즘은 거의 쓰이지 않는다.
RAID-3
스트라이핑 기술을 사용하여 디스크들을 구성하고, 별도의 디스크에 패리티 정보를 저장한다. 입출력작업이 동시에 모든 디스크에 대해 이루어지므로, 입출력을 겹치게 할 수 없다. 대형 레코드가 많은 시스템에 이용된다.
RAID-0과 거의 동일한데 패리티 디스크가 하나 더 달린 형태로 이해하면 된다. 읽기 속도는 동일하지만 쓰기는 패리티를 같이 처리하므로 속도가 좀 더 느리다.
RAID-4
RAID-3보다 좀 더 개선된 형태라고 생각하면 된다. 블록 형태의 스트라이핑 기술을 사용하여 디스크를 구성한다.
RAID-5
안전성과 속도 모두 추가한, 가장 무난하여 가장 많이 사용되는 방식이다. 최소한 3개 이상의 하드가 있어야 구현이 가능하다. 패리티를 사용하지만 RAID-2,3,4와 다르게 여러 하드에 분산저장하여 병목 현상을 해결한다.
만약 하드가 4개가 있다면, 하드 하나를 4개로 나눈 뒤 하나를 패리티 디스크로 할당하고 자신을 제외한 나머지 3개 하드 중 한 하드의 페리티 정보를 저장한다. 이렇게 교차로 구성을 할 경우 하나의 하드에 장애가 생기더라도 나머지 3개 하드의 패리티 정보를 모아 복구할 수 있다. 3개이상이기만 하면 RAID-5를 구성할수 있다. 하드 사용량은 N개일 경우 N-1개의 용량을 사용할 수 있다. 안전성과 효율이 뛰어나다.
3개 구성 시에는 33.3%, 4개 구성하면 25%, 5개 구성하면 20%가 패리티 공간으로 사용된다.
RAID-6
전체적인 구성은 RAID-5와 비슷하지만 디스크에 2차 패리티 구성을 포함함으로써 매우 높은 안전성을 자랑한다. RAID-5는 1개의 디스크 오류에만 대처가 가능하지만 RAID-6는 2개의 디스크 오류까지 대처가 가능하다.
2개의 패리티를 사용하므로 최소 4개의 디스크를 구성해야 한다. 공간 효율성이나 처리속도는 떨어지지만 안전성은 크게 증가된다.
4개 구성시에는 50%, 5개 구성하면 40%, 6개 구성하면 33.3%를 패리티 공간으로 사용한다.
RAID-0+1
RAID0의 스트라이핑으로 구성된 하드들을 묶어 RAID-1미러링으로 구성하는 방법이다.
RAID-1+0
RAID-0+1의 반대 개념이다. RAID-1로 구성된 하드들을 묶어 RAID-0으로 구성하는 방법이다. RAID-0+1보단 RAID-1+0이 더 많이 쓰인다.