RAID 개요
RAID는 데이터 저장 성능과 안정성을 높이기 위해 사용되는 기술입니다. RAID 시스템은 하드 디스크나 SSD(솔리드 스테이트 드라이브) 등 두 개 이상의 드라이브가 병렬로 작동하는 방식으로 구성됩니다. RAID는 소프트 RAID와 하드 RAID로 분류할 수 있습니다. 소프트 RAID에서는 메모리 아키텍처가 운영 체제에 의해 관리됩니다. 하드 RAID의 경우, 메모리를 관리하기 위해 디스크 내에 전용 컨트롤러와 프로세서가 내장되어 있습니다.
RAID 레벨
RAID 레벨에는 기본 RAID 레벨(0, 1, 5, 6)과 스트라이프 RAID 레벨(10, 50, 60)이 포함됩니다.스트라이프 RAID 어레이는 두 개 이상의 기본 RAID 어레이를 결합하여, 특정 RAID 컨트롤러에서 각 어레이가 지원하는 최대 드라이브 수라는 한계를 극복함으로써 더 높은 성능, 용량 및 가용성을 제공합니다.
RAID 0
RAID 0은 데이터 스트라이핑을 기반으로 하며, 데이터 스트림을 여러 세그먼트나 블록으로 나누어 각 블록을 서로 다른 디스크에 저장합니다. 따라서 시스템이 데이터를 읽어야 할 때, 모든 디스크에서 데이터를 동시에 읽어와 이를 결합하여 전체 데이터 스트림을 재구성할 수 있습니다. 이 방식의 장점은 읽기/쓰기 작업 속도가 현저히 빨라, 성능이 다른 요소보다 우선시되는 환경에 이상적이라는 점입니다. 또한 전체 볼륨의 총 용량은 개별 디스크들의 용량을 모두 합한 것과 같습니다.

스트라이핑이란 무엇인가요? 데이터를 여러 디스크에 분할하여 모든 디스크에 고르게 분배함으로써, 특정 디스크에 과부하가 걸리는 것을 방지합니다. 데이터를 여러 디스크에서 동시에 읽어올 수 있어 속도와 성능이 향상됩니다.
장점
• 데이터는 여러 드라이브에 분산되어 있습니다
• 디스크 공간이 가득 찼습니다
• 최소 2개의 드라이브가 필요합니다
• 고성능
단점
• 데이터 중복을 지원하지 않습니다
• 내결함성을 지원하지 않습니다
• 오류 감지 기능이 없음
• 디스크 하나라도 고장 나면 해당 어레이의 데이터가 완전히 손실됩니다.
RAID 1
RAID 1은 데이터 미러링 개념을 활용합니다. 이 방식에서는 데이터를 동일한 디스크 세트에 미러링하거나 복제하여, 한 디스크에 장애가 발생하더라도 다른 디스크를 사용할 수 있도록 합니다. 또한 모든 디스크에서 서로 다른 데이터 블록에 동시에 접근할 수 있으므로 읽기 성능이 향상됩니다.
그러나 RAID 0과는 달리, 새로운 데이터를 기록할 때마다 모든 드라이브를 업데이트해야 하기 때문에 쓰기 성능이 저하됩니다. 또 다른 단점은 데이터를 복제하는 과정에서 공간이 낭비되어 스토리지 비용이 증가한다는 점입니다.

데이터 미러링이란 무엇인가요? 여러 디스크에 데이터를 미러링한다는 것은 데이터의 복사본을 서로 다른 저장 장치에 분산하여 저장하는 것을 의미하며, 이를 통해 중복성과 성능이 향상됩니다.
RAID 1은 저장된 데이터의 보안을 강화하기 위해 설계된 가장 널리 사용되는 RAID 방식입니다. 예를 들어, 파일이 하나의 하드 드라이브에 기록되어 저장되면, 해당 파일은 자동으로 하드 드라이브 2, 3 또는 다른 디스크에도 저장됩니다. 이는 시스템이 완전한 중복성을 제공한다는 것을 의미하며, 한 드라이브에 장애가 발생하더라도 두 번째 드라이브가 즉시 그 역할을 대신할 수 있음을 뜻합니다.
장점
·데이터 미러링을 수행하여, 한 드라이브의 데이터를 다른 드라이브에 복사함으로써 중복성을 확보합니다.
• 높은 읽기 속도: 한 드라이브가 사용 중일 때 다른 드라이브를 사용할 수 있기 때문
• 드라이브 중 하나에 장애가 발생하더라도 어레이는 정상적으로 작동합니다
• 최소 2개의 드라이브가 필요합니다
단점
• 비용이 더 많이 듭니다(미러링을 위해 각 드라이브마다 추가 드라이브가 필요합니다)
• 모든 드라이브를 업데이트해야 하므로 쓰기 성능이 저하됩니다
RAID 5
RAID 5는 최소 3개의 드라이브가 필요하며, RAID 0과 마찬가지로 데이터를 여러 드라이브에 분산 저장하지만, 여기에 더해 드라이브 전체에 ‘패리티’ 정보가 분산되어 있습니다. 단일 드라이브에 장애가 발생하더라도 다른 드라이브에 저장된 패리티 정보를 사용하여 데이터를 복구할 수 있습니다. 가동 중단 시간은 전혀 발생하지 않습니다. 읽기 속도는 매우 빠르지만, 패리티를 계산해야 하기 때문에 쓰기 속도는 약간 느립니다. 데이터 드라이브 수가 제한적인 파일 및 애플리케이션 서버에 이상적입니다.

RAID 5는 패리티 정보 저장 공간으로 인해(드라이브 3개 사용 시) 저장 용량의 33%가 손실되지만, 여전히 RAID 1보다 비용 효율적인 구성입니다. 가장 널리 사용되는 RAID 5 구성은 드라이브 4개를 사용하며, 이 경우 저장 용량 손실률은 25%로 줄어듭니다. 최대 16개의 드라이브까지 지원합니다.
RAID 5는 분산 패리티를 사용하는 스트라이핑으로도 알려져 있습니다:

장점
·분산 패리티를 사용하는 블록 단위 스트라이핑
·패리티는 어레이 내의 디스크들에 분산되어 있습니다
·고성능
·비용 효율적
·최소 3개의 드라이브가 필요합니다
단점
• 디스크 장애 발생 시, 사용 가능한 모든 드라이브의 데이터를 바탕으로 패리티를 계산해야 하므로 복구 시간이 더 오래 걸릴 수 있습니다
• 드라이브의 동시 고장을 감당할 수 없음
RAID 6
RAID 6는 이중 패리티 블록을 사용하여 RAID 5보다 우수한 데이터 중복성을 제공하며, 이를 통해 어레이 내 최대 두 개의 드라이브 고장에 대한 내결함성을 높입니다. 각 디스크에는 두 개의 패리티 블록이 있으며, 이 블록들은 어레이 내 서로 다른 디스크에 저장됩니다. RAID 6는 고가용성 시스템을 유지하기 위한 매우 실용적인 인프라입니다.

RAID 6는 대부분의 트랜잭션이 읽기 작업인 일반적인 웹 서버에는 적합한 선택이지만, 데이터베이스 서버와 같은 쓰기 작업이 많은 환경에는 권장되지 않습니다.
RAID 6는 이중 분산 패리티를 사용하는 스트라이핑으로도 알려져 있습니다:

장점
·DUAL 분산 패리티를 사용한 블록 단위 스트리핑
·패리티 블록 2개를 생성합니다
·어레이 내에서 드라이브 2대가 동시에 고장 나더라도 정상 작동을 유지합니다
·추가적인 내결함성 및 중복성
·최소 4개의 드라이브가 필요합니다
단점
• 비용이 고려 대상이 될 수 있습니다
• 이중 패리티로 인해 데이터 쓰기 시간이 더 오래 걸립니다
RAID 10 (RAID 1+0)
RAID 10은 RAID 1과 RAID 0을 역순으로 결합한 것입니다. 때로는 ‘중첩형’ 또는 ‘하이브리드’ RAID라고도 불리며, RAID 0의 빠른 성능과 RAID 1의 중복성을 모두 갖춘 장점을 제공합니다. 이 구성에서는 여러 RAID 1 블록이 상호 연결되어 RAID 0처럼 작동합니다. 이는 높은 디스크 성능(RAID 5 또는 6보다 우수)과 중복성이 모두 필요한 경우에 사용됩니다.

장점
·패리티 없음
·RAID 0 스트라이핑 및 RAID 1 미러링 수행
·미러링 전에 스트라이핑이 수행됩니다
·사용 가능한 용량은 n/2 × 디스크 용량입니다(n = 디스크 수).
·필요한 드라이브의 수는 2의 배수여야 합니다
·데이터 스트라이핑 시 뛰어난 성능
단점
• 비용이 많이 든다. 각 드라이브마다 추가 드라이브가 필요하기 때문이다.
• 디스크 용량의 절반이 미러링에 사용되므로 전체 용량의 100%가 활용되지는 않습니다
• 확장성이 매우 제한적
RAID 50
RAID 50은 두 개 이상의 RAID 5 어레이로 구성되며, RAID 0과 유사한 스트라이핑 어레이를 형성합니다. 동일한 수의 RAID 5 어레이를 구성하는 것에 비해 더 높은 액세스 성능과 더 강력한 데이터 보호 기능을 제공합니다. 단일 RAID 5에 상응하는 어레이를 ‘서브셋’ 또는 ‘서브어레이’라고 하며, 3개 이상의 서브셋을 구성할 수 있습니다.

RAID 50은 서버 및 어레이에 구축하여 파일 서버, 데이터베이스 서버, 가상 머신 스토리지 및 백업, 영상 편집, 3D 애니메이션 렌더링 등 다양한 애플리케이션을 실행하는 데 사용할 수 있습니다.
RAID 50은 ‘분산 패리티 스트라이핑’으로도 알려져 있습니다:

장점
·재구축 시간 단축
·중복성 성능 향상
·액세스 성능 향상
단점
·6개 이상의 드라이브가 필요합니다
·설치 효율을 저하시킵니다
·제한된 중복성
RAID 60
RAID 60(때로는 RAID 6+0이라고도 함)은 여러 개의 RAID 6 세트(이중 패리티를 사용하는 스트라이핑)와 RAID 0(스트라이핑)을 결합한 것입니다. 이중 패리티를 통해 각 RAID 6 어레이에서 두 개의 드라이브가 고장 나더라도 데이터를 복구할 수 있으며, 스트라이핑을 통해 각 RAID 6 어레이에 드라이브를 추가하지 않고도 용량과 성능을 향상시킬 수 있습니다.
RAID 50과 마찬가지로 RAID 60 구성도 8개 이상의 드라이브를 지원할 수 있지만, 실제로는 16개 이상의 드라이브로 구성된 환경에만 적합합니다. RAID 60의 사용 가능 용량은 RAID 그룹 내 데이터 드라이브의 수에 따라 50%에서 88% 사이입니다.
RAID 10 및 RAID 50에서 사용할 수 있는 위의 모든 다중 브랜치 구성은 RAID 60에서도 사용할 수 있습니다. 예를 들어, 드라이브 36개를 사용하는 경우 각 분기에 드라이브 18개씩 포함된 RAID 60을 구성하거나, 각 레그에 드라이브 12개씩 포함된 3개의 레그로 구성된 RAID 60을 구성할 수 있습니다.
RAID 60은 RAID 50과 유사하지만 더 높은 중복성을 제공하므로, 용량이 매우 큰 서버, 특히 데이터를 백업하지 않는 서버(예: 다수의 카메라를 처리하는 영상 감시 서버)에 적합합니다.
RAID 60은 ‘이중 분산 패리티를 사용하는 존 간 스트라이핑’으로도 알려져 있습니다:

장점
·그룹 내의 각 RAID 6 어레이는 드라이브 2개의 고장을 견딜 수 있어 매우 안전합니다.
·드라이브가 다수인 경우가 아니면 이 RAID 레벨을 사용하지 않을 것이라는 점을 고려할 때, 용량이 매우 크고 비용 효율적입니다.
단점
• 대량의 드라이브가 필요합니다
• 패리티 계산에 더 많은 드라이브가 필요하기 때문에 RAID 50보다 비용이 약간 더 듭니다
RAID 레벨 비교
RAID 레벨 선택은 다음 요인들에 따라 결정됩니다:
• 읽기 성능
• 작성 성능
• 내결함성
• 어레이 성능 저하 (내결함성 RAID 레벨의 경우)
• 유효 저장 용량