'하드디스크여러개RAID0설정'에 해당되는 글 1건

  1. 2023.04.07 저렴한 하드디스크 여러개 RAID 0 설정 묶으면 성능은 n배 속도 향상
posted by 퍼스트 희망봉 2023. 4. 7. 12:29

비싼 SSD 안사도 된다

저렴한 하드디스크 HDD를 여러개 사서 한개로 묶으면 성능은 n배가 된다

가령 SATA3 SSD 2TB는 가격이 20만원이 넘는데 속도는 450 ~ 500MB 정도이다

반면 하드디스크는 절반 가격으로 RAID 0 설정하여 비슷한 속도 구현이 가능하다

 

HDD 의 경우 RAID 0 를 구성하면 속도 차이가 확연히 발생한다. SATA SSD 의 경우는 속도의 차이가 감소하며, NVME SSD는 실사용에서 체감되는 속도 차이는 없는 수준이다. 당장 SATA SSD와 NVME SSD만 놓고 비교하더라도 대체적으로 비디오작업 등 메모리에 올려놓기 힘든 대용량 파일 편집에서나 약간 차이가 난다는 의견이 대부분이며, 게임 벤치마크 등을 봐도 SATA로는 17초에 로딩될게 NVME로는 16초에 로딩되는 정도의 차이밖에 나지 않는다. SSD 가 고속화 됨에 따라 CPU, 메모리등 다른 쪽에서 병목현상이 발생해서 SSD RAID 에 따른 이득이 줄어 들기 때문이다.

RAID 0의 경우 얻는 속도 이득에 비해서, 큰 단점이 존재하는데, 디스크 전체에 데이터를 나눠 저장하므로 하나의 디스크만 망가져도 전체 어레이가 날아간다. 2023년 현재 HDD는 대용량 데이터의 장기보관 용도로 쓰이고 있으므로 디스크 하나가 망가지면 데이터 전체가 날아간다는 약점은 매우 큰 문제다.

개인이 RAID를 고려할 때에는 남는 저장장치를 활용하고 싶은데 여러개의 드라이브에 나눠서 데이터를 저장하기 싫어서 하나의 논리 드라이브로 묶어서 편하게 관리하려는 경우가 대다수다. 이 경우에는 JBOD나 RAID 5, RAID 6 정도를 활용해볼 수 있다.

. RAID 0 Striping, 스트라이프[Windows]

여러 개의 멤버 하드디스크를 병렬로 배치하여 거대한 하나의 디스크처럼 사용한다. 데이터 입출력이 각 멤버 디스크에 공평하게 분배되며, 디스크의 수가 N개라면 입출력 속도 및 저장 공간은 이론상 N배가 된다. 다만 멤버 디스크 중 하나만 손상 또는 분실되어도 전체 데이터가 파손되며, 오류검출 기능이 없어 멤버 디스크를 늘릴수록 안정성이 떨어지는 문제가 있다. 따라서 장착된 하드디스크의 개수가 RAID-5 구성 조건에 충족되지 않는 등의 불가피한 경우가 아니라면 절대로 RAID 0으로 구성하지 않는 걸 추천한다.

이미지 프로세싱, 데이터베이스 캐시 등 빠른 입출력 성능을 필요로 하며, 데이터 손실이 문제되지 않는 환경에서 쓰일 수 있지만, 상용 환경에서는 위험성 문제로 RAID 5나 6을 이용하는 경우가 많다고 한다.

이 때문에 고성능을 경험하고 싶은 파워유저가 구축해 보는 경우가 많다. SSD를 단독 사용하기에는 용량이 많이 부족하니, 여러 개를 묶어서 초고속 저장 장치를 구축하는 것. 이런 점을 간파하고 노트북 제조 업체에서 공식적으로 RAID0 기술을 구현한 최초의 사례로는 소니의 노트북 브랜드인 VAIO이다. VGN-Z 라인업의 고급형 모델에 한시적으로 탑재한 적이 있었으며, 이 라인업의 후속작인 프리미엄 모델 Z 시리즈 VPCZ1부터 본격적으로 적용했다.

NVMe SSD 8개를 한 개의 볼륨으로 묶은 사례도 있다. 속도는 27.7 GiB/s(28375 MiB/s)가 나온다고 한다.

RAID 0뿐만 아니라 모든 RAID 볼륨은 기록 시 한 디스크에 한번에 기록할 데이터 크기인 Stripe size를 지정할 수 있다. 컨트롤러에 따라 다르지만 Intel RST에서는 4~128KB를 지원한다. Stripe size가 4KB이고 멤버 디스크가 4개라면 16KB짜리 파일을 기록할 때 디스크당 4KB씩 돌아가면서 한 번씩 기록한다. Stripe size가 128KB이고 멤버 디스크가 2개, 기록할 파일이 2MB(2048KB)라면, 첫 번째 디스크에 128KB, 두 번째 디스크에 128KB를 순차적으로 기록하는 것을 디스크당 8번씩 반복한다. SSD에서는 128KB 이상이 추천되며, 하드디스크라면 32KB 정도가 추천된다. 하지만 사용자의 환경에 따라 최적의 성능을 내는 Stripe size가 다르므로 하나하나 적용해 보는 것이 좋다.

개인용으로 사용할 때 주의할 점이 있는데, A, B, C, ...의 디스크를 RAID 0으로 묶었을 때의 속도는 min(A, B, C, ...) * (묶은 숫자) - (오버헤드 감소분)이다. 간단하게 말해서 가장 낮은 속도로 하향 평준화가 된다는 뜻인데, 연속 파일 입출력의 경우에는 상대적으로 입출력 속도가 뛰어나서 오버헤드 감소분이 크게 체감이 안 되지만 4k 파일 입출력의 경우에는 RAID 0으로 묶어도 입출력 속도가 크게 차이가 안 나거나 더 떨어지는 경우도 상당부분 존재한다. 따라서 성능 향상용으로 RAID를 구성할 경우 벤치마크를 돌려 성능을 확실히 확인한 후에 결정하는 것이 좋다. 4K가 가장 크게 영향을 끼치는 게이밍에 있어서는 SSD의 RAID 0로 얻을 수 있는 성능 이득이 거의 없다. 오히려 게임에 따라 문제가 발생할 수 있는데, 게임의 맵에 이정표를 찍어 이동하는 경우 새로 도착할 맵의 데이터를 대량으로 읽어야 하는데, 게임 엔진에 따라 게임을 RAID 0 SSD에 설치한 경우 새로운 맵에 진입한 직후에 프레임이 크게 저하되는 현상이 나타날 수 있다.