본문 바로가기
Lecture/OS

RAID

by YUNZEE 2023. 12. 2.
728x90

데이터를 저장장치에 보관할 때는 백업을 해야 한다. 하드디스크에 저장된 데이터는 영원할 것 같지만 그렇지 않다. 하드디스크도 기계라 수명이 있고 USB 메모리나 SSD도 최대 횟수가 정해져 있다. 따라서 수시로 백업해야 하는데 이를 수동으로 하면 매우 번거롭다.

 

RAID redundant array of independent disks는 자동으로 백업하고 장애가 발생하면 이를 복구하는 시스템으로 '레이드'라고 읽는다. 메모리가 아닌 값싼 디스크를 이용하기 때문에 이런 이름이 붙었다. RAID는 동일한 규격의 디스크를 여러 개 모아 구성하며, 장애가 발생했을 때 데이터를 복구하는 데 사용된다.

 

RAID의 원리는 하나의 원본 디스크와 같은 크기의 백업 디스크에 같은 내용을 동시에 저장하고, 한 디스크가 고장 났을 때 다른 디스크를 사용하여 데이터를 복구하는 것이다. 이러한 방식은 2개의 디스크에 거울처럼 똑같은 내용을 저장한다는 의미로 미러링 mirroring이라고 한다.

 

RAID 0(스트라이핑)

RAID 0은 병렬로 연결된 여러 개의 디스크에 데이터를 동시에 입출력할 수 있도록 구성된다. A1, A2, A3, A4라는 4개의 데이터를 저장하는 경우, 일반 방식에서는 순서대로 네 번 저장하지만 RAID 0에서는 4개의 데이터를 동시에 저장한다. 이를 데이터를 여러 갈래로 찢어서 저장하기 때문에 RAID 0을 스트라이핑이라고 부른다. 

 

A1, A2, A3, A4는 4개의 디스크에 동시에 저장된다. 따라서 4개의 디스크로 구성된 RAID 0은 1개의 디스크로 구성된 일반 시스템보다 이론적으로는 입출력 속도가 4배 빠르다.

 

RAID 1(미러링) 기본 레이어드

RAID 1에서는 하나의 데이터를 2개의 디스크에 나누어 저장하여 장애 시 백업 디스크로 활용한다.

RAID 1은 같은 크기의 디스크를 최소 2개 이상 필요로 하며 짝수 개의 디스크로 구성된다. 같은 데이터를 여러 디스크에 저장하기 때문에 장애 발생 시 미러링된 디스크를 활용하여 데이터를 복구할 수 있다. RAID 1의 단점은 저장하는 데이터와 같은 크기의 디스크가 하나 더 필요하기 때문에 비용이 증가한다는 점이다.  또한 같은 내용을 두번 저장하기 때문에 속도가 느려질 수 있다.

 

RAID 3

RAID 3과 RAID 4에서는 오류 검출 코드인 패리티 피트를 사용하여 데이터를 복구한다. 앞에서는 패러티 비트가 오류를 찾을 수는 있지만 교정하지는 못한다고 했다. 그러나 RAID의 경우 패러티 비트로 오류를 복구할 수 있다. 

 

RAID 5

RAID 4를 사용하지 않는 진짜 이유는 데이터 병목 현상 때문이다. RAID 4에서는 모든 패리트 비트가 하나의 디스크에 저장되기 때문에 입출력이 일어날 때마다 패리트 비트 디스크에 데이터가 저장되어 병목 현상이 발생한다. 또한  패리티 비트가 저장된 디스크와 다른 디스크에서 동시에 장애가 발생할 경우 복구가 안된다는 치명적인 단점 있다.

RAID 5는 패리티 비트를 여러 디스크에 분산하여 보관함으로써 패리티 비트 디스크의 병목 현상을 완화한다. 따라서 한 디스크에 장애가 밟생하면 다른 디스크에 있는 패리티 비트를 이용하여 데이터를 복구할 수 있다.

 

RAID 6

RAID 6은 RAID 5와 같은 방식이지만 패리티 비트가 2개다. RAID 5의 경우 한 디스크에 장애가 발생했을 때는 복구가 가능하지만 디스크 2개에 동시에 장애가 발생했을 때는 복구가 불가능하다. 디스크 2개 동시에 장애가 발생하면 패리티 비트가 사라지기 때문이다. RAID 6은 패리티 비트를 2개로 구성하여 분산하므로 디스크 2개의 장애를 복구할 수 있다. 하지만 RAID 5보다 계산량이 많다는 것과 4개의 디스크당 2개의 추가 디스크가 필요하다는 단점이 있다.

 

RAID 10

RAID 시스템은 하드디스크의 가격이 내려가면서 추가되는 디스크의 수보다 빠른 입출력과 복구에 중점을 두었다. 그 결과 빠른 입출력이 장점인 RAID 0과 복구 기능이 있는 RAID 1을 결함 한 RAID 10이 등장하였다. RAID 10은 RAID 1+0을 의미하며, 미러링 기능이 있는 RAID 1과 빠른 데이터 전송이 가능한 RAID 0을 결합한 형태다.

RAID 0+1과 RAID 10은 둘 다 병렬로 데이터를 처리하여 입출력 속도를 높일 수 있으며, 장애 발생 시 미러링된 디스크로 복구가 가능하다. 차이점은 RAID 0+1의 경우 장애가 발생했을 때 이를 복구하려면 모든 디스크를 중단해야 하지만 RAID 10은 일부 디스크만 중단하여 복구할 수 있다는 것이다. 다시 말해 RAID 10에서는 2개의 디스크가 RAID 1로 묶여 있기 때문에 반대편에 있는 디스크를 멈추지 않아도 회복이 가능하다.  RAID 10이 더 많이 사용되는데, RAID 10을 사용하려면 최소 4개의 디스크가 필요하다.  

 

퀴즈

1. 동일한 규격의 디스크를 여러 개 모아 구성하며, 장애가 발생했을 때 데이터를 복구하는 데 사용되는 것을 무엇이라 하는가?

2. 병렬로 연결된 여러 개의 디스크에 데이터를 동시에 입출력할 수 있도록 구성하는 것을 무엇이라 하는가? 

3. 이를 데이터를 여러 갈래로 찢어서 저장하기 때문에 RAID 0을 무엇이라 부르는가? 

4. 같은 크기의 디스크를 최소 2개 이상 필요로 하며 짝수 개의 디스크로 구성된다.RAID 중에 몇 번째 인가?

5. 패리트 비트를 여러 디스크에 분산하여 보관함으로써 패리티 비트 디스크의 병목 현상을 완화한다. 따라서 한 디스크에 장애가 발생하면 다른 디스크에 있는 패리티 비트를 이용하여 데이터를 복구할 수 있다. 이것은 RAID 중에 몇 번째 인가?

6. 패리티 비트를 2개로 구성하여 분산하므로 디스크 2개의 장애를 복구할 수 있다. 하지만 RAID 5보다 계산량이 많다는 것과 4개의 디스크당 2개의 추가 디스크가 필요하다는 단점이 있다. RAID중에 몇번 째 인가?

7. 미러링 기능이 있는 RAID 1과 빠른 데이터 전송이 가능한 RAID 0을 결합한 형태다. 이것을 부르는 이름이 2가지인데 그 두 가지가 무엇인가?

8. 이것은 2개의 디스크가 RAID 1로 묶여 있기 때문에 반대편에 있는 디스크를 멈추지 않아도 회복이 가능하다. 그래서 이것을 더 많이 사용되는데, 이것을 사용하려면 최소 4개의 디스크가 필요하다.  이것은 무엇인가?

 

 

728x90

'Lecture > OS' 카테고리의 다른 글

디렉터리의 구조  (4) 2023.12.05
파일과 파일 시스템  (2) 2023.12.04
디스크 스케줄링  (2) 2023.11.30
저장장치  (0) 2023.11.29
입출력 시스템  (2) 2023.11.28