[OS] RAID

저장장치 관리 - RAID

RAID(Redundant Array of Independent Disks)는 자동으로 백업을 하고 장애가 발생하면 복구하는 시스템이다.
동일한 규격의 디스크를 여러 개 모아 구성한다.
속도, 안전성, 가용성의 증대를 위해 사용된다.

RAID 0(스트라이핑)

RAID 0

병렬로 연결된 여러 디스크에 데이터를 동시에 입출력할 수 있도록 구성된다. 따라서 4개로 구성된 RAID 0은 1개의 디스크로 구성된 시스템보다 이론적으로 입출력 속도가 4배 빠르다.

RAID 1(미러링)

RAID 1

하나의 데이터를 2개의 디스크에 나누어 저장함으로써 장애 시 백업디스크로 활용한다. 데이터가 똑같이 여러 디스크에 복사되므로 mirroring 이라고 부른다.

RAID 2

RAID 0과 같은 스트라이핑 방식 사용하고, ECC를 따로 관리하여 오류 발생 시에 이 코드를 이용해 디스크를 복구한다.

RAID 2

하드디스크의 데이터 저장 단위는 블록이지만 RAID 2에서는 데이터가 비트 단위로 저장된다.
디스크가 4개인 위 그림에서는 데이터 A의 1번째 비트는 1번 디스크에, 2번째 디스크는 2번 디스크에, 이런 식으로 저장된다. 이렇게 비트 단위로 저장하면 각 비트의 ECC를 구성하여 나중에 비트 단위로 복구할 수 있다.

RAID 3, RAID 4

RAID 3, 4

Parity Bit를 사용하여 데이터를 복구한다. 패리티 정보는 별도의 디스크에 따로 저장한다.
RAID 3는 데이터를 비트 단위로 나눠 저장하지만 RAID 4는 블록 단위로 나눠 저장한다.

RAID 5

RAID 5

RAID 4와 같은 방법을 사용하지만 병목 현상을 해결한 방식이다. 위의 그림처럼 패리티 비트를 여러 디스크에 분산하여 사용한다. 따라서 한 디스크에 장애가 발생하면 다른 디스크에 있는 패리티 비트를 이용해 복구할 수 있다.

RAID 6

RAID 6

RAID 5와 같은 방식이지만 패리티 비트가 2개이다. RAID 5의 경우 디스크 2개가 동시에 장애가 발생하면 복구가 불가능하다. RAID 6은 이러한 문제를 해결하여 안정성을 더욱 고려하는 시스템에서 사용된다.

RAID 10 (RAID 1+0)

RAID 10

빠른 입출력이 장점인 RAID 0(스트라이프)과 복구 기능을 가진 RAID 1(미러링)을 결합한 것이다. 그림철머 4개의 디스크를 2개씩 묶어 RAID 1로 구성하고, RAID 1로 묶인 디스크를 RAID 0으로 다시 묶는다.
RAID 0+1은 RAID 0으로 먼저 묶고 다시 1로 묶은 구성이다. RAID 0+1과 RAID 10은 둘 다 병렬로 데이터를 처리하여 입출력 속도를 높일 수 있고, 복구가 가능하다. 차이점은 RAID 0+1은 장애가 발생했을 때 모든 디스크를 중단해야 하지만 RAID 10은 일부 디스크만 중단하여 복구할 수 있다는 것이다.


출처