| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- Redundant Array of Independent
- 스프링부트 장점
- Service Worker
- 기술면접
- 프론트엔드
- 컴퓨터과학
- java란 무엇인가
- 스프링 스프링부트 차이점 공통점
- Blazor WebAssembly
- 스프링부트 단점
- REST API
- opc-ua 다운로드
- CS
- UaExpert download
- java란?
- C#이론
- OPC-UA Download
- nosql
- UaExpert다운로드
- cs기술면접
- C# Blazor
- Prosys Opc-ua 다운로드
- prosys opc-ua
- OPC-UA
- 스프링부트의 장단점
- Blazor Web App
- jvm구성요소
- spring spring boot 차이점 공통점
- 서버저장방식
- C# CS
- Today
- Total
담비의 개발블로그
[CS]RAID(Redundant Array of Inexpensive Disks) 본문
RAID(Redundant Array of Inexpensive Disks)
=> 하드디스크를 병렬로 배열해 사용하는 기법
1. RAID 0
- 원리: 데이터를 여러 조각으로 쪼개서 두 개 이상의 디스크에 동시에 나눠서 저장한다. (이 방식을 '스트라이핑'이라고 함)
ex) 1 2 3 4 5 6 을 저장해야할 때
하드디스크 1 : 1 3 5
하드디스크 2 : 2 3 6
이런 방식으로 저장된다.
- 장점: 데이터를 저장하고 읽어오는 작업을 디스크들이 나눠서 동시에 처리하니까 속도가 2배로 엄청나게 빨라진다. 또한, 디스크 2개를 묶으면(예: 1TB + 1TB) 합친 용량인 2TB를 100% 다 쓸 수 있다.
- 단점: 안전성이 없다. 만약 묶어놓은 디스크 중 딱 하나만 고장 나도, 데이터 조각의 일부가 날아가 버리기 때문에 전체 데이터를 모두 잃게 된다. 하드디스크 용량이 서로 같아야 한다.
- 사용 예시: 임시 작업용 영상 편집 파일, 게임 설치 드라이브 등 [데이터가 삭제되어도 되지만 속도가 중요한] 경우에 쓴다.
2. RAID 1
- 원리: 한 디스크에 데이터를 저장할 때, 다른 디스크에도 완벽하게 똑같이 복사해서 쌍둥이로 저장합니다. (이 방식을 '미러링'이라고 함)
- 장점: 데이터가 매우 안전하다. 디스크 하나가 벼락을 맞아 고장 나더라도, 다른 디스크에 똑같은 데이터가 그대로 살아있기 때문이다.
- 단점: 똑같은 데이터를 두 곳에 중복해서 저장해야 하므로 가성비가 떨어지고 용량이 반토막 난다. 1TB 디스크 2개를 묶어도 실제 쓸 수 있는 용량은 1TB뿐이다.
- 사용 예시: 가족사진 보관용 NAS, 중요한 회사 문서, 백업 서버 등 [디스크가 고장나더라도 데이터가 삭제되면 안되는] 경우에 쓴다.
3. RAID 5 (가장 많이 쓰는 구조)
- 원리: 디스크를 최소 3개 이상 묶어야 한다. 데이터를 쪼개서 저장하면서, 동시에 디스크가 고장 났을 때 데이터를 살려낼 수 있는 '수학적 복구 공식(패리티)'을 디스크마다 골고루 나눠서 저장한다.
- 장점
① 최고의 용량 효율성: 복구용 공간으로 디스크 딱 1개 분량만 희생하면 된다. 디스크 개수($N$)가 많아질수록 효율이 극대화된다. (예: 1TB 디스크 10개를 묶으면 9TB나 사용할 수 있음)
② 준수한 읽기 속도: 여러 디스크에서 데이터를 동시에 읽어오므로 읽기 성능이 향상된다.
-단점
① 쓰기 성능 저하 (Write Penalty): 데이터를 새로 쓸 때마다 기존 데이터와 패리티를 읽고, 새로 계산해서 다시 쓰는 과정을 거치기 때문에 쓰기 속도가 느려진다.
② 복구(Rebuild) 중 위험성: 디스크 1개가 고장 나서 새 디스크로 교체할 때, 남은 디스크들을 100% 가동해 데이터를 복구한다. 이때 남은 디스크 중 하나라도 추가로 고장 나면 모든 데이터가 파괴된다.
- 사용 예시
① 일반 기업의 파일 서버 (NAS): 사내 직원들이 문서를 공유하고 저장하는 용도 (읽기 작업이 많고 용량이 많이 필요한 곳)
② 백업 서버: 주기적으로 데이터를 대량 저장해 두는 2차 백업용 시스템
4. RAID 6
원리: RAID 5와 비슷한데, 복구 공식을 2중으로 만든다. 최소 4개의 디스크가 필요하다.
- 장점
① 압도적인 안정성: 디스크가 동시에 2개 고장 나도 시스템이 멀쩡히 돌아간다. RAID 5의 복구 중 전멸 위험을 완벽하게 방어한다.
② 초대용량 구축 가능: 하드디스크를 10개, 20개씩 묶는 대형 시스템에서는 디스크가 동시에 죽을 확률이 올라가는데, RAID 6는 이를 든든하게 버텨다.
- 단점
① 비용 증가: 복구용으로 디스크 2개 분량의 용량이 희생된다. 디스크가 최소 4개 이상 필요하므로 초기 구축 비용이 더 든다.
② 더 느려진 쓰기 속도: 패리티를 2개나 계산해서 적어야 하므로, RAID 5보다 쓰기 속도가 더 떨어진다.
- 사용 예시
① 대용량 데이터 스토리지: 10TB 이상의 고용량 하드디스크를 수십 개 이상 연결하여 사용하는 대형 서버룸
② CCTV 녹화 서버: 24시간 끊임없이 영상이 저장되고, 데이터가 유실되면 절대 안 되는 보안 시스템 (단, 쓰기 부하를 감당할 수 있는 고성능 컨트롤러 필요)
5. RAID 10 (1+0)
원리: 아까 배운 RAID 1(복사본 만들기)과 RAID 0(쪼개서 속도 높이기)을 합친 것이다. 최소 4개의 디스크가 필요하다.
- 장점
① 최고의 성능: 복잡한 수학적 계산(패리티)을 하지 않기 때문에 읽기와 쓰기 속도가 모두 엄청나게 빠르다.
② 빠르고 안전한 복구: 디스크가 고장 나도 옆에 있는 복사본 짝꿍에서 그대로 데이터를 복사해 올 수 있다. 복구 속도가 매우 빠르고 성능 저하도 거의 없다.
③ 다중 고장 버팀: 운이 좋다면(서로 다른 짝꿍 디스크가 고장 날 경우) 디스크가 여러 개 깨져도 데이터가 유지된다.
- 단점
① 최악의 용량 효율성 (가성비↓): 전체 디스크 용량의 딱 50%만 사용할 수 있다. (예: 1TB 디스크 4개를 사서 묶어도 정작 사용가능한 범위는 2TB)
- 사용 예시
① 고성능 데이터베이스(DB) 서버: 대형 쇼핑몰 결제 시스템, 은행 거래 시스템 등 1초에 수천 번씩 데이터 읽고 쓰기가 일어나며 한 치의 오차도 허용하지 않는 곳
② 가상화(VM) 호스트 서버: 하나의 물리 서버에 수십 개의 가상 컴퓨터를 띄워 동시에 엄청난 I/O(입출력) 부하가 걸리는 환경
번외) RAID 2, 3, 4
RAID 2, 3, 4도 옛날에는 있었다. 하지만 기술이 발전하면서 RAID 5가 이들의 장점을 모두 흡수해 버렸다. 너무 구식이 되어버려서 지금은 사실상 "멸종"되었고 컴퓨터 박물관에서나 볼 수 있는 기술이 되었다.
'CS(컴퓨터과학)' 카테고리의 다른 글
| [CS]Java JVM 구조 (0) | 2026.02.02 |
|---|---|
| [CS]2026.01.31 면접준비 (0) | 2026.02.01 |
| [CS]2026.01.30 면접준비 (0) | 2026.01.31 |
| 자바(Java)란 무엇인가? (0) | 2025.11.27 |
| [CS] 자바 메모리 영역&데이터 저장 방식(스택, 힙) (0) | 2025.10.21 |
