CS/컴퓨터구조

[Chapter 7] 03 RAID

jieun0675 2023. 6. 1. 12:43

❖ RAID 출현 배경

• 크기가 작은 여러 개의 디스크들을 서로 연결하여 하나의 큰 용량을 가진 디스크 배열(disk array)을 구성하여 전송속도 및 신뢰도 향상을 꾀함

장점

• 데이터 분산 저장에 의한 동시 액세스(concurrent access) 가능

• 병렬 데이터 채널에 의한 데이터 전송 속도 향상

 

단점

결함발생 가능성 증가 (MTTFmean time to failure 단축)

 

❖ RAID에 적용된 기술

• 스트라이핑(striping : 분산)

• 미러링(mirroring : 중복)

• 패리티(parity : 무결성)

 

1. RAID-0 (non-redundancy, striping)

• 데이터 블록들을 여러 개의 디스크들로 이루어진 디스크 배열(disk array)에 분산 저장하는 기술

• 균등 분산 저장을 위하여 라운드-로빈(round-robin) 방식 사용

• 장점 : 액세스 속도와 데이터 전송 속도를 높일 수 있다.

 

❖ 디스크 배열의 단점

MTTF(Mean Time To Failure)의 단축

  - 고장난 확률이 높아짐

 

2. RAID–1 (mirrored)

• 디스크 미러링(disk mirroring) 방식 이용

   - 데이터 디스크에 저장된 모든 데이터들은 짝(pair)을 이루고 있는 미러 디스크의 같은 위치에 복사

• 장점 : 거의 완전한 결함허용도(fault tolerance) 제공

• 단점 : 높은 가격

• 주요 용도 : 높은 신뢰도를 요구하는 시스템 소프트웨어 혹은 중요한 데이터 파일 저장에 사용

 

3. RAID-2 (redundant via Hamming code)

• 비트-단위 인터리빙 방식 사용 : 데이터를 각 디스크에 비트 단위로 분산 저장

• 해밍 코드(Hamming code)를 이용한 오류 검출 및 정정

• 단점 : 필요한 검사 디스크들의 수가 많아 가격이 높음

• 주요 용도 : 오류가 많이 발생하는 환경에서 사용(거의 사용하지 않음)

 

4. RAID-3 (bit-interleaved striping wi9th parity)

패리티를 이용한 오류 검출 및 정정 방식 사용 (복구가능)

• 장점 : 병렬 데이터 읽기/쓰기 가능 → 디스크 액세스 속도 향상

• 단점 : 쓰기 동작 때마다 패리티 비트 갱신 필요 → 시간 지연 발생(병목현상 발생)

 

❖ 패리티 발생 및 복구 과정

5. RAID-4 (block-interleaved striping with parity)

• 블록-단위 인터리빙 방식 사용

• 데이터 디스크들의 동일한 위치에 있는 블록들에 대한 패리티 블록을 패리티 디스크에 저장

• 문제점 : 매번 쓰기 동작을 위해 패리티 디스크를 두 번씩 액세스 → 병목 현상

 

 

6. RAID-5 (block-interleaved striping with distributed parity)

• RAID-4의 문제점을 보완하기 위해 패리티 블록들을 분산 저장

• 장점 : 패리티 디스크에 대한 병목 현상 해소, 쓰기 동작들의 병렬 수행 가능

• 블록 크기 및 입출력 요구의 패턴에 관계없이 좋은 성능을 나타내므로 현재 널리 사용됨 (비용과 안정성이 적절하게 보장)

 

7. RAID-01과 RAID-10

분산 저장을 통한 성능 향상을 꾀할 수 있으면서 데이터의 안정성도 보장받기 위한 구성

• 전체 용량의 50%만 사용하기 때문에 비용이 많이 든다는 문제점이 있다.

 

❖ RAID-01과 RAID-10의 비교(디스크0에 결함이 발생한 경우)

• RAID-01 : 디스크0에 결함이 발생하면, 디스크1과 디스크2의 데이터도 손실되므로 디스크3, 디스 크4, 디스크5의 데이터를 복사하여 복구한다

• RAID-10 : 디스크0에 결함이 발생하면 디스크1의 데이터를 복사하여 복구한다.

      → RAID-10이 유리하다. (복구시에도 RAID-10이 더 유리하다)