티스토리 뷰

RAID는 여러개의 디스크를 연결하여 하나의 디스크처럼 동작시키는 방법입니다.

RAID는 Software와 Hardware로 구성하여 신뢰성은 물론 성능까지도 기대할 수 있습니다.

 

Hardware

4개의 DISK를 연결하는 경우 RAID Controller 밑으로 DISK 4개가 다닥다닥 연결되어 제어되는 형태입니다. 제조될 때부터 RAID 시스템을 수용하도록 만든 장치는 RAID Hardware라고 부릅니다.

 

Software

RAID 하드웨어는 자체만으로 동작할 수 없어 O/S에 맞는 적절한 드라이버 설치가 필요하다. 이들을 RAID Software라 한다. 

Software RAID

전용 RAID 하드웨어 없이 소프트웨어로 여러 DISK를 RAID 처럼 동작하게 하는 방식. 신뢰성과 속도 등의 성능이 떨어질 수 있으나 전용 하드웨어를 구비하지 않아도 되므로 가격면에서 유리하다.

 

RAID Controller

RAID Controller는 여러개의 DISK를 마치 하나의 DISK 처럼 동작하도록 합니다. 때문에 O/S는 RAID를 하나의 DISK 처럼 인식합니다.

신뢰도

서버 다중화와 비슷한 맥락으로 DISK 1이 고장나도 나머지 DISK가 동작하여 데이터를 읽을 수 있으므로 신뢰성이 높다라고 말할 수 있습니다.

신뢰도를 높이는 방법은 크게 세가지가 있습니다.

1. 미러링(Mirroring)

: 쉐도잉(Shadowing)이라고 하기도 하며 Disk 두개를 쌍으로 한개를 Data Disk, 하나를 Backup Disk로 사용하는 것입니다. DISK를 두배만큼 이용하기 때문에 효율적이지 않습니다.

2. 패리티 디스크(Parity Disk)

: 미러링의 대안으로 하나의 DISK만을 백업용으로 두고(Parity Disk) 나머지를 Data Disk로 사용하는 방법입니다. Parity Disk를 포함해 다른 하나의 DISK가 고장나는 경우, Data를 복구할 수 없습니다.

3. 에러 코렉팅 코드(ECC, Error Correcting Code)

: Parity Disk를 포함해 다른 하나의 DISK가 고장나는 경우, Data를 복구할 수 없습니다. 때문에 Parity Disk를 몇개로 나누어

 

성능

하나의 DISK로 처리하던 것을 여러 DISK로 나누어 처리할 수 있으므로 성능적으로 뛰어납니다. 

RAID의 성능을 높이는 기법으로 Striping이라는 방법을 쓰는데 이는 두가지로 나뉩니다.

* Striping은 연속된 데이터를 여러개의 디스크에 라운드로빈(RR) 방식으로 기록하는 기술입니다.

1. 비트 스트라이핑

: 저장 대상인 하나의 메모리 블럭을 Data Disk 갯수만큼 bit 단위로 쪼개서 저장하는 방식입니다. Data Disk 가 4개이고 메모리블럭이 4kBytes 인 경우, 각 Data Disk 마다 1kByte 씩 저장되도록 RAID Controller에서 처리합니다.

2. 블럭 스트라이핑

: Data Disk를 다시 Block 단위로 쪼개서 각 블럭에 쪼개서 저장하는 방식입니다. 비트 스트라이핑과 유사해보이지만 비트스트라이핑은 첫 비트로 Data Disk의 갯수만큼만 읽을 수 있지만 블럭 스트라이핑에서는 Block의 수 만큼 읽어낼 수 있습니다. DISK는 한번 접근하여 많은 Data를 읽는 것이 좋으므로 블럭 스트라이핑을 주로 사용합니다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함