여차저차 하여 모처럼 기술에 대해 글을 쓴다.
아주 오래 전에 아마도 알고 있었을 텐데 지금은 다 까먹은 것.
RAID는 Redundant Array of Independent (Inexpensive) Disks.
영어 울렁증이 없지 않아, 구글링을 통해 알게 된 것을 적어 둔다.
누군가에게 정보를 제공하려는 목적은 전혀 아니다.
내 떨어지는 기억력을 보완하려는 몸부림일 뿐.
아래 위키피디아에 잘 설명돼 있는 내용을 조금 가져온다.
(위키에 있는 그림 보면 좀 더 이해가 쉬울 것)
RAID 0: Block-level striping without parity
RAID 1: Mirroring without parity
RAID 2: Bit-level striping with hamming code for error correction (안 쓴다네요)
RAID 3: Byte-level striping with dedicated parity (안 쓴다네요)
RAID 4: Block-level striping with dedicated parity (잘 안 쓴다네요)
RAID 5: Block-level striping with distributed parity (많이 쓰이는 놈)
RAID 6: Block-level striping with double distributed parity
4와 5의 차이는,
4는 parity 보관에 별도 디스크 할당, 여기에 쓰기 오버헤드가 크다.
5는 parity를 RAID에 참여하는 디스크들에 분산, 오버헤드를 줄인다.
5와 6의 차이는,
5는 parity용 디스크가 하나라, single disk failure에만 대처 가능.
6은 parity용 디스크가 둘이라, two disk failure까지 복구 가능.
다음으로 Nested RAID라는 놈이 있다. 위에 적은 0~6을 조합해 쓰는 방식.
여기서는 01과 10만 알아두기로 하자.
RAID 01: Block-level striping, and mirroring without parity
RAID 10: Mirroring without parity, and block-level striping
01보다 10이 낫다고 한다. 난 다음과 같이 이해했다.
01의 경우 Disk 0이 망가지면 건너건너에 있는 Disk 2로부터 복구해야 한다.
반면, 10의 경우에는 Disk 0이 망가지면 바로 옆 Disk 1로부터 복구 가능.
결국 안정성 면에서 낫다. 성능은, 아마도 같지 싶다.
구글링에서 발견해 참고한 글.
RAID 일반에 대해 https://harryp.tistory.com/806
RAID 01 vs. 10 https://blog.naver.com/kanglae77/220609327442
한글 위키피디아 설명은 좀 부실하다. 영어 위키피디아 참고.
https://en.wikipedia.org/wiki/Standard_RAID_levels
Standard level을 조합해 만든 Nested level에 대한 설명.
https://en.wikipedia.org/wiki/Nested_RAID_levels
댓글