단일 하드 디스크 드라이브의 RAID-Z가 바보입니까?


18

전체 드라이브가 죽으면 단일 디스크의 RAID-Z가 도움이되지 않습니다. 그러나 다른 유형의 오류는 어떻습니까?

내 경험상 때때로 읽을 수없는 파일이 있습니다. Mac OS X에서 시스템은 일정 시간 동안 중단 된 다음 오류가 발생합니다. 파일을 어딘가에서 옮기고 해당 파일에 불량 섹터 또는 불량 블록이 있거나 아마도 전체 불량 트랙이 있다고 가정합니다.

필자는 직접 디스크 장애를 관리하는 것이 일반적인 활동 인 플로피 디스크 시대로 거슬러 올라갑니다. 물론 당신은 가능한 빨리 나쁜 플로피를 교체 할 것입니다. 그러나 때때로 당신은 즉시 그것을 할 수 없었습니다. 그래서 나쁜 영역을 찾아서 파일에 할당 한 다음 그 파일을 절대로 삭제하지 않는 것이 좋습니다.

첫 번째 질문은 어떻게 하드 드라이브 고장입니까? 위의 가정이 유효합니까? 불량 블록이 불량하지만 전체 드라이브를 여전히 대부분 사용할 수 있다는 것이 사실입니까? 이 경우 RAID-Z가 다른 블록 (영역)의 패리티를 사용하여 디스크의 불량 블록 또는 불량 영역을 복구 할 수있는 것처럼 보입니다.

사용 사례는 백업용입니다. 일주일에 한 번 8TB 드라이브에 데이터를 푸시하면 추가 패리티가 비트 썩음, 불량 섹터 또는 다른 지역화 된 드라이브 오류?

이론적으로 기술적으로 결함이 없다면 ZFS를 구성 할 수 있습니까?

편집 :이 질문을 게시하기 전에 다른 질문을 보았습니다. 각 파티션이 함께 그룹화 된 별도의 파티션으로 분할하는 것이 하나의 옵션입니다. 그러나 개념 상 N 개의 파티션에 대한 블록 맵을 서로 얽혀서 하나의 스트라이프가 논리적으로 N 개의 파티션을 가로 질러 물리적으로 매우 가깝게 만들 수 있습니다. 이것은 내 질문의 요점이었다. "ZFS가이를 수행하도록 구성 할 수 있습니까?" 즉, 파티션이 까다로운 ZFS가 아닌 ZFS입니다.


7
단일 디스크 중복성을 원하면 par2 아카이브 를 만드십시오 . ZFS를 사용하면 ( 을)를 설정할 copies=2 있지만 그렇게하면 50 %의 스토리지 패널티가 부과됩니다. 또한 ZFS 전문가는 아니지만 제 직감 (잘못 될 수 있음)은 ZFS가 제안 된 솔루션에 만족하지 않을 것이라고 말합니다. PAR2는 성숙하고 유연한 기술입니다. 이를 사용하면 패리티 요구 사항을 충족 할뿐만 아니라 원하는 경우 아카이브 단위로 패리티 양을 설정할 수도 있습니다.
EEAA


HDD의 트랙을 실린더라고합니다 (플레이 터가 두 개 이상있을 수 있으므로).
LawrenceC

1
드라이브가 나빠지면 가속 프로세스가되는 경향이 있습니다. 전체 드라이브를 사용할 수 없을 때까지 불량 섹터 비율이 증가합니다. 드라이브가 고장 나기 시작하고 RAID-Z가 자동으로 보상하는 경우 백업을 성공적으로 작성했을 수 있지만 복구 할 때 유용성이 지났습니다. 백업 장치를 백업하는 동안 백업 장치가 잘못 작동하기 시작하면 백업 장치가 크게 고장 나기 때문에 장치를 교체하고 성공적으로 작성된 내용을 자신있게 읽을 수 있다고 계속 신뢰할 수 있습니다.
Anthony X

@EEAA-내가 사용할 것 같습니다. 감사합니다. 그리고 의견을 주신 모든 분들께 감사드립니다.
pedz

답변:


23

RAID-Z 패리티는 풀의 다른 장치에있는 패리티 블록을 사용하여 작동하므로 장치를 N + 1, N + 2 또는 N + 3 동일한 크기의 파티션으로 파티션해야합니다. 여기서 N 파티션에는 데이터가 포함되고 1/2 패리티 비트를 포함합니다.

이러한 파티션 위에 선택한 RAID-Z를 사용하여 zpool을 만든 다음 zpool에서 파일 시스템을 만듭니다.

이론적으로 이것은 효과가 있습니다. 실제로 파일의 결과 블록은 다른 파티션에있는 다른 ZPool 장치에 위치하므로 파일 시스템 성능이 끔찍합니다. 따라서 블록을 읽은 후 HDD는 HDD 플래터의 다른 영역으로 이동하고 다음 블록을 읽는 등의 작업을 수행해야합니다.

대답은 그렇습니다. 멍청 할 것입니다.


2
SSD에서이 작업을 수행하는 것은 어떻습니까?
JFL

7
@JFL : SSD에 사용되는 NAND 플래시는이 솔루션이 해결하려는 문제, 즉 개별 블록이 죽는 것과 정확히 같은 문제가 있습니다. 실제로 NAND의 경우 모든 SSD 컨트롤러가 명시 적으로 관리하는 것은 큰 문제입니다. 결과적 으로 SSD의 가장 일반적인 가시적 결함은 전체 장치의 총 손실로 이어지며 장치에 읽기 전용 오류가 발생했을 수 있습니다. 이 솔루션으로 인한 문제의 이점은 여기에서 방지되지 않았습니다.
MSalters

6
또한 SSD는 블록을 재정렬합니다. 적용된웨어 레벨링 최적화 중 하나는 쓰기를 그룹화하는 것입니다. 다른 파티션에 대한 연속적인 쓰기는 동일한 지우기 블록에있게되므로 지우기 블록이 실패한 경우 동일한 데이터를 여러 번 저장할 경우의 이점을 정확히 잃게됩니다.
liori
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.