본문 바로가기

컴퓨터구조

[컴퓨터 구조] RAID

RAID( Redundant Array of Independent Disk )는 2개 이상의 디스크들을 병렬로 처리하여 성능 및 안정성을 향상시키는 방식이다. 즉 raid arrays는 운영체제에 하나의 논리적인 디스크로 나타나게 됩니다.

 

RAID에는 레벨이라고 하는 서로 다른 종류들이 있습니다. 이번엔 자주 사용되는 레벨만 알아보도록하겠습니다. 

RAID0, RAID1, RAID2, ... RAID6, RAID10, RAID50등등

 

RAID0 

RAID0은 데이터를 조각내서 분산시켜 저장하는 방식입니다. 

https://m.blog.naver.com/koreansec/220938672251

레이드 0은 위의 사진처럼 데이터를 저장합니다. 이렇게 저장된 데이터를 stripe이라고 하며 데이터를 stripe 시켜 저장해 놓는 것을 striping이라고 합니다.  레이드 0의 특징으로는 데이터를 striping 시켜놓기 때문에 데이터의 중복이 없이 저장되고 입출력 시 성능이 가장 좋습니다. 하지만 위의 사진에서 알 수 있듯이 데이터를 따로 백업시켜 놓지 않기 때문에 디스크 1개라도 고장 나면 모든 데이터에 접속할 수가 없습니다. 

 

RAID1

레이드 1은 간단합니다. 원본에 대한 동일한 복사본을 만들어 저장합니다. 이를 디스크 미러링이라고 합니다.   

https://www.seagate.com/kr/ko/manuals/network-storage/business-storage-nas-os/raid-modes/

위와 같은 방식의 특징은 하나의 디스크가 고장 나도 복구가 쉽다는 것입니다. 다만 데이터입력/수정 시 복사본에도 동일한 작업을 해야 하므로 성능이 줄어든다는 단점이 있습니다. 또 하나는 디스크 용량을 많이 잡아먹는다는 단점이 있습니다. 

 

 

RAID4

레이드 4는 레이드 1처럼 미러링 한 데이터를 저장하는 것이 아니라 parity bit를 저장합니다. parity bit는 오류를 검출하고 복구하기 위한 정보입니다. 

 

https://www.thegeekstuff.com/2011/11/raid2-raid3-raid4-raid6/

하나의 디스크에 parity bit를 저장해 놓습니다. 이러한 방식의 장점은 미러링 보다 더 적은 용량으로 데이터를 안전하게 보관이 가능하다는 것입니다. 다만 데이터수정이 일어날 경우 매번 패러티 비트를 저장해 놓은 디스크에도 수정이 일어나니 데이터 병목현상이 발생한다는 문제점이 있습니다.

 

 

RAID5

레이드 5는 레이드 4의 문제점을 해결하기 위해 패러티비트도 분산시켜서 각 디스크에 저장합니다. 

https://www.seagate.com/kr/ko/manuals/network-storage/business-storage-nas-os/raid-modes/

볼륨의 디스크 전체와 데이터 블록 하나당 하나의 패리티 블록에 데이터를 기록합니다. 디스크 1개가 고장 나면 대체디스크에 복구가 가능하지만 대체 디스크에 복구를 하기 전에 두 번째 디스크가 고장나면 어레이의 모든 데이터가 손실된다는 특징이 있습니다. 레이드 5는 성능과 안정성 모두 고려한 형태로 서버 구축 시 가장 많이 사용된다고 합니다.

 

    

RAID6

https://www.seagate.com/kr/ko/manuals/network-storage/business-storage-nas-os/raid-modes/

레이드 6은 레이드 5에서 패리터비트를 2개로 늘린 형태이다. (볼륨의 디스크 전체와 데이터 블록 당 2개의 패러티 블록에 데이터를 기록한다.) 이러한 방식의 장점은 디스크 2개까지 고장 나도 데이터의 손실이 발생하지 않는다는 것이다.  

안정성이 높은 만큼 성능은 레이드 5보다 좋지 못합니다.

 

 

  

'컴퓨터구조' 카테고리의 다른 글

[컴퓨터구조] 명령어 파이프라인  (0) 2023.06.12
코어와 멀티코어  (0) 2023.06.02
인터럽트  (0) 2023.06.02
CPU의 구성  (0) 2023.05.25
명령어  (0) 2023.04.24