RAID(Redundant Array of Indeppendent Disks)란 주로 HDD와 SSD를 사용하는 기술로, 데이터의 안정성 혹은 높은 성능을 위해 여러 개의 물리적인 보조기억장치를 하나의 논리적 보조기억장치처럼 사용하는 기술을 말한다.
RAID를 구성하는 방법은 여러가지가 있고 이러한 것을 RAID Level이라 표현하는데, RAID level은 대표적으로 0, 1, 2, 3, 4, 5, 6이 있고, 그로부터 파생된 10, 50이 있다.
2, 3은 현재 잘 사용하지 않으며 대중적인 부분만 정리한다.
RAID 0
여러 개의 보조기억장치에 데이터를 단순히 나누어 저장하는 구성 방식
데이터는 disk 갯수만큼 나눠서 각 disk에 저장되고 이러한 데이터를 stripe, 분산해 저장하는 것을 striping이라고 한다.
striping이 되면 저장된 데이터를 읽고 쓰는 속도가 빨라지는 장점이 있지만, disk가 하나라도 문제가 생긴다면 다른 모든 disk의 정보를 읽는데 분제가 생길 수 있다.
RAID 1
RAID 0의 단점을 보안하기 위해 나온 방식으로, 복사본을 만드는 방식이며 mirroring이라고도 부른다.
4개의 disk에서 2개는 원본을 저장하고 나머지 2개의 disk는 그 백업을 저장한다.
RAID 1 방식은 복구가 매우 간단하다는 장점이 있으나 같은 disk가 2개 있는 셈이라 하나에 문제가 발생해도 읽어버린 정보를 금방 되찾을 수 있지만, 사용 가능한 용량이 적어진다는 단점이 있다.(비용 증가)
RAID 4
RAID 1과 같은 완전한 복사본을 만드는 대신 parity bit를 이용해 오류를 검출하기 위한 데이터만을 저장하는 장치를 두는 방식.
RAID 4에서는 parity bit를 저장한 장치를 이용해 다른 장치들의 오류를 검출하고 오류가 있다면 복구하도록 한다.
RAID 5
RAID 4는 어떤 새로운 데이터가 저장될 때마다 parity를 저장하는 disk에도 데이터를 쓰게 되므로 parity를 저장하는 장치에 병목 현상이 발생한다는 문제가 있었는데, RAID 5에서는 parity 정보도 분산하여 저장하는 방식으로 RAID 4의 병목 현상을 해소했다.
RAID 6
기본적으로 RAID 5와 같으나, 서로 다른 두 개의 parity를 두는 방식.
오류를 검출하는 수단을 2개 가지도록 해 RAID 4, 5 보다 안전한 구성이라고 볼 수 있다.
다만 새로운 정보를 저장할 때마다 함께 저장할 parity가 2개이므로 쓰기 속도가 5에 비해 느리고, 그 속도를 희생해서라도 안전하게 쓰도록 하는 방식이다.
이 외에도 0과 1을 혼합한 10, 0과 5를 혼합한 50 방식도 있다.