RAID(Redundant Array of Independent Disks)는 여러 개의 물리적 보조기억장치를 하나의 논리적 보조기억장치처럼 사용하는 기술이다.
RAID를 사용하는 주요 목적은 아래와 같다.
데이터 안전성: RAID는 보조기억장치에 데이터를 분산 저장하고, 보조기억장치 중 하나 이상이 손상되어도 데이터를 복구할 수 있도록 도와준다. 이를 통해 데이터 유실 위험을 줄일 수 있다.
(보조기억장치에는 수명이 있다. 만약 본인이 유명 기업의 서버를 관리하는 엔지니어라고 생각해보자. 매일 엄청난 데이터가 서버로 날아오고, 잃어버려서는 안되는 데이터가 포함되어 있다고 생각해보자.
우리는 데이터의 안전을 지켜야만 한다. )
성능 향상: 일부 RAID 구성은 데이터를 여러 보조기억장치에 분산하여 입출력 속도를 높여 성능을 향상시킨다. 특히 읽기/쓰기 속도가 더 빠른 RAID 구성들은 데이터 접근 속도를 개선할 수 있다.
RAID를 구성하는 방법은 여러가지가 있다. 그 방법을 RAID 레벨이라고 표현하는데, RAID레벨은 대표적으로 레벨 0부터 레벨 6까지 있다. 그로부터 파생된 RAID 10과 50이 있다. RAID 2 와 RAID 3은 현재 잘 활용되지 않는다.
RAID 0은 여러 개의 보조기억장치에 데이터를 나누어 저장한다. 데이터가하드 디스크 개수만큼 나누어서 저장 된다. 그래서 읽고 쓰기 속도가 빨라지지만. 하나의 하드 디스크에 문제가 생긴다면 다른 모든 하드 디스크의 정보를 읽는 데 문제가 생길 수 있다.
RAID 1은 복사본을 만드는 방식이다. 미러링이라고도 불리는 RAID 1은 어떠한 데이터를 쓸 때 원본과 복사본 두 군데에 쓴다. 그래서 쓰기 속도가 RAID 0보다 느리다. 그리고 복사본이 만들어지는 용량만큼 사용자가 사용하지 못한다. 느리고 비용이 증가하지만 다른 디스크에 데이터가 보존되어 데이터 안정성이 높다.
RAID 4은 오류를 검출하고 복구하기 위한 정보를 저장하는 장치를 두는 구성 방식이다.
오류를 검출하고 복구하기 위한 정보를 패리티 비트(parity bit)이라고 하는데, 패리티를 저장한 장치를 이용해 다른 장치들의 오류를 검출하고 복구한다. 이렇게 하면 RAID 1보다 적은 하드디스크로도 데이터를 안전하게 보관할 수 있다.
하지만 새로운 데이터가 저장될 때마다 패리티를 저장하는 장치에도 데이터를 써야하는데, 이렇게 되면 패리티를 저장하는 장치에 병목 현상이 발생한다는 문제가 있다.
RAID 5는 여러 데이터와 패리티를 분산 저장한다.
분산 저장함으로써 RAID 4의 문제인 병목 현상을 해소한다.
RAID 5처럼 여러 데이터와 패리티를 분산 저장하는 것은 같으나, 서로 다른 두 개의 패리티를 추가하여 두는 방식이다. 여분의 패리티 정보를 사용하여 두 개의 디스크가 동시에 손상되어도 데이터 복구가 가능하여 안전한 구성이다. 다만 새로운 정보를 저장할 때마다 저장할 패리티가 두개이므로, 쓰기 속도가 RAID 5보다 느리다.
다양한 RAID 레벨이 있지만, 이 외에도 RAID 0과 RAID 1을 혼합한 RAID 10 방식도 있고, RAID 0과 RAID 5를 혼합한 RAID 50 방식도 있다. ( Nested RAID라고 한다. )
RAID는 다양한 구성과 변형이 존재한다. 레벨마다 장단점이 있으므로 용도, 예산, 성능 및 안정성 요구 사항 등을 고려하여 잘 선택해야 한다.
좋은 정보 감사합니다:)