1. RAID란 무엇인가?
RAID (Redundant Array of Inexpensive Disks)는 여러 개의 작은 디스크를 병렬로 사용하여 성능과 신뢰성을 모두 향상시키는 기술이다.
• 초기 목적:
• 디스크 I/O 성능 개선.
• 대형 디스크를 대체할 수 있는 저렴한 디스크 활용.
• 현대적 초점:
• 주된 목표는 데이터 신뢰성과 내구성.
2. RAID의 주요 목표
(1) 성능 개선
• 데이터를 여러 디스크에 나누어 저장(Striping)하여 읽기/쓰기 속도를 증가.
• 병렬 데이터 액세스를 통해 대역폭 확장.
(2) 신뢰성 개선
• 디스크 고장에도 데이터를 잃지 않기 위해 중복성(Redundancy) 도입.
• 중복 데이터를 이용하여 복구 가능성 제공.
3. RAID의 기본 레벨
RAID는 레벨(0~6)로 구분되며, 각 레벨은 성능과 신뢰성을 다르게 조율한다.
RAID 0: Striping (No Redundancy)
• 특징: 데이터를 디스크에 분산(Striping) 저장.
• 성능 최적화에 초점, 중복성 없음.
• 장점:
• 대용량 파일을 병렬로 처리하여 읽기/쓰기 속도 증가.
• 저장 공간의 100% 사용 가능.
• 단점: 고장 시 데이터 손실 위험 증가.
RAID 1: Mirroring
• 특징: 모든 데이터를 두 개 이상의 디스크에 동일하게 복사.
• 장점:
• 신뢰성 극대화.
• 디스크 고장 시 복사본에서 즉시 복구 가능.
• 단점:
• 저장 공간 효율 50%.
• 성능 손실: 쓰기 작업이 두 번 발생.
RAID 2: Hamming Code (Error Correction)
• 특징: 데이터와 함께 에러 검출 및 수정 코드를 저장.
• 장점: 에러 수정 능력.
• 단점: 비효율적이고 복잡하여 거의 사용되지 않음.
RAID 3: Bit-Interleaved Parity
• 특징: 한 디스크에 Parity 비트 저장.
• 데이터는 비트 단위로 여러 디스크에 분산.
• 장점:
• 한 디스크 고장 시 복구 가능.
• 대용량 파일 처리에 적합.
• 단점:
• 작은 파일 작업에서 비효율적.
RAID 4: Block-Interleaved Parity
• 특징: 데이터를 블록 단위로 분산하고, 한 디스크에 Parity 블록 저장.
• 장점:
• 블록 단위 읽기에서 독립적인 액세스 가능.
• 작은 읽기 작업 성능 향상.
• 단점:
• 쓰기 병목: Parity 디스크가 집중적으로 쓰기 작업을 처리해야 함.
RAID 5: Distributed Parity
• 특징:
• RAID 4의 개선 버전.
• Parity 블록을 디스크 전체에 분산 저장.
• 장점:
• 읽기/쓰기 작업 병목 완화.
• 뛰어난 성능과 신뢰성 간의 균형.
• 단점: 복구 시 Parity 계산 복잡.
RAID 6: P + Q Redundancy
• 특징:
• Parity 정보를 두 디스크에 저장하여 2개의 디스크 오류 복구 가능.
• 장점:
• 이중 고장에도 안전.
• 고용량 데이터 센터에서 널리 사용.
• 단점:
• Parity 계산 복잡도 증가.
• 저장 공간 효율 감소.
4. RAID의 성능 평가
(1) 성능
• RAID 0과 RAID 5는 높은 성능 제공.
• RAID 1은 읽기 성능은 좋지만 쓰기 성능 저하.
• RAID 3과 4는 작은 쓰기 작업에서 병목 발생.
(2) 신뢰성
• RAID 1과 RAID 6은 높은 신뢰성 제공.
• RAID 0은 신뢰성 없음.
5. 예제: I/O의 중요성 (Amdahl’s Law 적용)
문제:
• 초기 시스템의 총 실행 시간: 100초.
• CPU 시간: 90초.
• I/O 시간: 10초.
• CPU 성능이 2년마다 두 배 향상.
• 6년 후 성능 향상 비율?
계산 과정:
1. CPU 시간 감소:
• 2년 후: 45초.
• 4년 후: 23초.
• 6년 후: 11초.
2. 전체 실행 시간:
• 6년 후: 21초.
3. 속도 향상:
• speedUp => 4.7
결론:
• CPU 성능은 8배 향상되었지만, 전체 속도 향상은 4.7배에 그침.
• 이유는 I/O 병목 현상.
6. RAID 설계 시 고려사항
1. Redundancy 수준:
• 성능과 신뢰성 간의 균형 고려.
2. 복구 시간:
• 디스크 재건축 시간이 길어질수록 데이터 손실 위험 증가.
3. Hot-Swapping:
• 장애 디스크 교체 시 시스템 가동 유지.
4. Standby Spares:
• 대체 디스크를 미리 준비하여 신속한 복구 가능.
7. 요약
• RAID는 디스크 성능 및 신뢰성을 향상시키는 필수 기술.
• RAID 레벨 0~6은 각기 다른 성능/신뢰성 요구사항을 충족.
• 데이터 센터와 고가용성 시스템에서는 주로 RAID 5와 RAID 6이 사용됨.
• I/O 성능은 시스템 성능의 핵심 요소이며, RAID는 이를 해결하기 위한 중요한 접근법.
'Book > COMPUTER ORGANIZATION AND DESIGN RISC-V' 카테고리의 다른 글
ch5.exercise (0) | 2024.12.12 |
---|---|
CH5. Self-Study (0) | 2024.12.02 |
5.10 Parallelism an Memory Hierarchy:Cache Coherence (0) | 2024.12.02 |
5.9 Using a Finite-State Machine to Control a Simple cache (0) | 2024.12.02 |
5.8 A common Framework for Memory Hierarchy (0) | 2024.12.02 |