RAID & Redundant Storage Physics
여러 개의 물리 저장 장치를 하나로 묶어 성능을 높이거나 데이터 손실을 방지하는 스트라이핑, 미러링 및 패리티 연산의 물리 구조를 다루는 학습 노드입니다.
sys.entry
M
Me
hyunyoun's Blog
posts7 min read
1. Overview
RAID 및 가용 저장소 물리학(RAID & Redundant Storage Physics, RRS)은 "모든 하드웨어는 결국 고장 난다"는 물리적 숙명을 데이터 복제와 수리적 논리를 통해 극복하는 저장소 군집(Clustering) 기술입니다.
하나의 디스크는 물리적 충격이나 노후화에 취약합니다. 학습자는 데이터 조각을 여러 장치에 흩뿌려 속도를 높이는 **스트라이핑(Striping)**과, 동일한 데이터를 복사하여 생존력을 확보하는 **미러링(Mirroring)**의 물리적 상호작용을 배웁니다. 특히 RAID 5/6의 핵심인 패리티(Parity) 연산이 어떻게 소실된 비트를 XOR 논리로 물리 복구해내는지 분석합니다. 이를 통해 단 하나의 데이터 소실도 허용하지 않는 엔터프라이즈급 저장 시스템의 물리적 설계 원칙을 이해합니다.
2. Scope & Boundaries
In-Scope
- RAID Levels: RAID 0, 1, 5, 6, 10의 물리적 데이터 배치 및 장단점 분석
- Redundancy Physics: 미러링을 통한 하드웨어 결함 허용(Fault Tolerance)
- Parity Mechanics: XOR 연산을 이용한 데이터 복구 논리와 가용성 보증
- Reliability Metrics: MTBF(평균 고장 간격), 확률적 데이터 손실 분석 모델
Out-of-Scope
- 소프트웨어 RAID(LVM, ZFS 등)의 고수준 관리 명령어 (03-03-04PSA 노드로 일부 위임)
- 특정 제조사의 하드웨어 RAID 컨트롤러 설정 UI
Boundaries
- RRS vs. PSA: PSA가 '개별 매체의 영속성'을 다룬다면, RRS는 '여러 매체가 모여 만드는 시스템적 가용 물리'에 집중합니다.
3. Counterexample
- 단순히 "디스크를 합치는 것"이라 설명하는 것은 RRS 학습이 아닙니다. RAID 0에서 디스크가 개 늘어날 때, 왜 이론적 대역폭(Bandwidth)은 배가 되지만 시스템 전체의 고장 확률 또한 비례해서 증가하는지 수리적으로 입증할 수 있어야 합니다. 또한, RAID 5에서 디스크 하나가 고장 났을 때 발생하는 리빌드(Rebuild) 과정이 왜 주변 디스크들에게 물리적 과부하를 주어 추가 고장을 유발하는지 분석하지 못한다면 RRS의 핵심 리스크 관리를 놓친 것입니다.
4. Prerequisites
- Disk, SSD & Magnetic Physics (Basic): 단일 저장 매체의 물리 특성 기초가 필수입니다. (03-04-01 DSM)
- Persistence & Storage Analytics (Recommended): 데이터 무결성 및 수명 분석 이해가 권장됩니다. (03-03-04 PSA)
5. Learning Map
- Safety in Numbers: 개별 장치의 물리적 불안정성을 집단적 협력으로 해결하는 철학을 배웁니다.
- Speed Through Division: 병렬 읽기/쓰기를 위해 데이터를 조각내는 스트라이핑 물리를 익힙니다.
- The Mirror Mirror: 거울처럼 데이터를 복사하여 최후의 보루를 만드는 법을 분석합니다.
- Logical Reconstruction: 흩어진 조각과 패리티를 조합해 죽은 데이터를 살려내는 수리 마법을 완성합니다.
6. Learning Topics
Basic
Core: 스트라이핑과 미러링의 기초 (Striping & Mirroring)
- Why to Learn: 속도를 위해 안정성을 버리느냐, 안정성을 위해 용량을 절반 버리느냐의 물리적 선택지이기 때문입니다.
- What to Learn:
- RAID 0 (Striping): 데이터를 개로 쪼개어 동시에 쓰는 대역폭 확장 물리
- RAID 1 (Mirroring): 두 디스크에 똑같이 써서 하나가 죽어도 버티는 생존 물리
- Chunk Size: 스트라이핑 시 데이터를 나누는 물리적 최소 단위 결정
- How to Learn:
- 두 개의 하드디스크를 RAID 0와 1로 각각 묶어보며, 벤치마크 툴로 읽기/쓰기 속도의 수리적 변화 측정 실습
- 거울(Mirror) 디스크 하나를 강제로 제거했을 때 데이터 접근이 어떻게 물리적으로 유지되는지 확인
- Implement: 개의 디스크가 있을 때 스트라이핑 방식으로 주소(LBA)를 분배하는 수리 알고리즘
Recommended
Core: 패리티 연산과 RAID 5/6 (Parity Physics)
- Why to Learn: 최소한의 물리 용량 희생으로 강력한 복구 능력을 가질 수 있는 현대 서버의 표준이기 때문입니다.
- What to Learn:
- Exclusive OR (XOR): 일 때, 어느 하나가 없어져도 나머지를 통해 물리 복원 가능한 논리
- Distributed Parity: 패리티 비트를 여러 디스크에 골고루 분산하여 병목을 막는 물리 배치
- Write Hole Problem: 쓰기 도중 정전 시 패리티가 불일치해지는 물리적 결함 현상
- How to Learn:
- 종이 위에 비트 단위로 데이터를 적고, 패리티 비트를 생성한 뒤 특정 비트를 지우고 다시 살려내는 수리 실습
- RAID 5 환경에서 디스크 한 장이 사라졌을 때 시스템 응답 속도가 왜 급락하는지(Degraded mode) 물리적 근거 탐구
- Implement: 3개의 데이터 블록을 입력받아 패리티 블록을 생성하고, 하나가 결손되었을 때 복구하는 함수
Practical
Core: 가용성 모델링과 리빌드 리스크 (Availability Analytics)
- Why to Learn: 수학적으로 고장 확률을 계산해야만 중요한 데이터를 싣기에 안전한지 판단 가능하기 때문입니다.
- What to Learn:
- MTBF (Mean Time Between Failures): 하드웨어 배치를 통한 시스템 전체 수명 확률 계산
- Rebuild Latency: 새 디스크 교체 시 전체 데이터를 채워넣는 물리적 소요 시간과 그동안의 위험 노출
- RAID 10 vs RAID 50: 계층적 구조를 통해 복구 성능과 용량 효율을 동시에 잡는 하이브리드 물리
- How to Learn:
- 대용량 고밀도 하드디스크(10TB 이상) 환경에서 RAID 5 리빌드가 며칠씩 걸리는 물리적 이유와 그 사이 2차 고장 확률 산출 실습
- 엔터프라이즈 환경에서의 '핫 스페어(Hot Spare)' 자동 투입 물리 시퀀스 분석
- Implement: 디스크 개수와 MTBF 값이 주어졌을 때 RAID 레벨별 연간 데이터 소실 확률() 계산기
Advanced
Core: 차세대 지능형 가용 저장소 (Erasure Coding)
- Why to Learn: RAID의 한계를 넘어 클라우드 스케일에서 무한한 안정성을 확보하는 수학적 정점을 이해하기 위함입니다.
- What to Learn:
- Erasure Coding (EC): Reed-Solomon 코드 등을 이용해 개의 조각 중 개만 있으면 복구하는 고차원 분배 물리
- Network-aware Storage: 여러 서버에 흩어진 물리 저장소들의 군집 가용성 관리
- Variable Stripe Depth: 데이터의 중요도에 따라 물리적 복제본 수를 동적으로 조절하는 기술
- How to Learn:
- 클라우드 저장소(AWS S3 등)가 왜 RAID를 쓰지 않고 Erasure Coding을 써서 99.999% 안정성을 물리 보증하는지 로직 분석 실습
- 데이터의 비중이 높을 때 체크섬(Checksum) 기법과 EC का 결합 물리 연구
- Implement: 간단한 Reed-Solomon 기반의 데이터 분산 및 복구 시뮬레이션
7. Terminology
8. References
Primary
- [P2] SWEBOK v4.0 - Software Construction / Runtime Efficiency (Execution) — Structural context.
- [P1] CS2023 - OS/Operating System Principles (Physical Storage) — Core requirements.
Secondary
- [The RAID Book] — Comprehensive technical reference.
- [High Performance Mass Storage and Parallel I/O] — Striping and performance focus.
Industry
- [Intel: RAID Levels and Benefits] — Hardware RAID standard guide.
- [NetApp: RAID-DP and Erasure Coding explained] — Enterprise storage standards.
9. Final Checklist
Primary
- 'RAID 0'과 'RAID 1'의 데이터 기록 시 물리적 헤드의 움직임과 대역폭의 차이를 설명 가능한가? (P1)
- '패리티(Parity)' 비트가 어떻게 단 하나의 추가 비트만으로 소실된 물리 데이터를 복원해내는지 XOR 수리 논리로 입증할 수 있는 가? (P1)
Secondary
- RAID 5 구성 시, 디스크 개수가 많아질수록 '읽기 성능'은 좋아지지만 '쓰기 성능'은 왜 패리티 오버헤드 때문에 물리적으로 정체되는지 소통 가능한가?
- 시스템 설계 시, 'RAID 10'이 왜 'RAID 01'보다 물리적 장애 복구 안정성(Fault isolation) 면에서 우월한지 도출할 수 있는 가?
Industry
- 금융권 데이터 센터 구축 시, 서비스 중단 없는 디스크 교체를 위한 'Hot Swapping' 하드웨어 시퀀스와 OS 인터페이스를 제안할 수 있는 가? (SFIA)
- 100TB 이상의 대규모 페타바이트 시스템에서 RAID 6보다 Erasure Coding이 왜 물리적-경제적으로 필수적인지 기술할 수 있는 가?