데이터 스트라이핑

Data striping

컴퓨터 데이터 스토리지에서 데이터 스트라이핑은 파일 등의 논리적으로 순차적인 데이터를 세그먼트화하여 연속되는 세그먼트가 다른 물리 스토리지 디바이스에 저장되도록 하는 기술입니다.

데이터 스트라이핑의 예입니다.4블록의 파일 A, B는 디스크 D1~D3에 걸쳐 있다.

스트라이핑은 처리 장치가 단일 저장 장치가 제공할 수 있는 것보다 더 빨리 데이터를 요청할 때 유용합니다.세그먼트(segment)를 동시에 액세스 할 수 있는 복수의 디바이스에 분산하는 것으로, 데이터 스루풋의 합계가 향상됩니다.또한 디스크 어레이 간에 I/O 부하를 분산하는 데도 유용합니다.스트라이핑은 RAID(독립 디스크), 네트워크 인터페이스 컨트롤러, 디스크 어레이, 클러스터된 파일 시스템 및 그리드 지향 스토리지의 서로 다른 시스템 및 일부 시스템의 RAM의 다중 배열에 있는 디스크 드라이브 간에 사용됩니다.

방법

스트라이핑의 한 가지 방법은 데이터 시퀀스의 시작부터 순차 세그먼트를 라운드 로빈 방식으로 스토리지 디바이스에 인터리브하는 것입니다.이 방법은 스트리밍 데이터에서는 잘 작동하지만 이후 랜덤 액세스에는 데이터가 포함된 장치에 대한 지식이 필요합니다.각 데이터 세그먼트의 물리 주소가 특정 디바이스에 대해 일대일 매핑이 할당되도록 데이터를 격납하면, 요구된 각 세그먼트에 액세스하기 위한 디바이스는, 풀 시퀀스내의 데이터의 오프셋을 인식하지 않고, 주소로부터 산출할 수 있다.

시퀀셜 세그먼트가 시퀀셜 디바이스에 저장되지 않는 다른 방법을 사용할 수 있습니다.이러한 비순차 인터리빙은 일부 오류 수정 체계에서 이점을 얻을 수 있습니다.

장점과 단점

스트라이핑의 장점은 퍼포먼스와 throughput입니다.데이터 액세스의 시퀀셜 타임 인터리빙에 의해, 각 스토리지 디바이스의 데이터 액세스 스루풋에 채용하는 스토리지 디바이스의 수를 누적해 곱할 수 있습니다.throughput이 증가하면 데이터 처리 장치는 중단 없이 작업을 계속할 수 있으므로 절차를 보다 신속하게 완료할 수 있습니다.이는 데이터 처리의 성능 향상으로 나타납니다.

서로 다른 스토리지 장치에 서로 다른 데이터 세그먼트가 보관되기 때문에 한 장치에 장애가 발생하면 전체 데이터 시퀀스가 손상됩니다.실제로 기억장치 어레이의 고장률은 각 기억장치의 고장률 합계와 같다.스트라이핑의 이러한 단점은 오류 수정을 위해 패리티 의 다중 정보를 저장함으로써 극복할 수 있습니다.이러한 시스템에서는 추가 저장 공간을 필요로 하는 비용으로 단점을 극복한다.

용어.

다음 디스크에서 작업을 계속하기 전에 디스크에 기록되거나 디스크에서 읽히는 순차 데이터의 세그먼트를 보통 청크, 스텝 또는 스트라이프 단위라고 하며, 단일 스트라이프 작업을 구성하는 논리 그룹을 스트라이프 또는 스트라이프라고 합니다.한 청크(스트라이프 단위)의 데이터 양은 종종 바이트 단위로 표시되며 청크 크기, 스트라이프 크기, 스트라이프 크기, 스트라이프 깊이 또는 스트라이프 길이로 다양하게 불립니다.어레이 내의 데이터 디스크 수는 스트라이프 폭이라고 불리기도 [1][2][3][4]하지만 스트라이프 내의 데이터 양을 나타낼 수도 있습니다.

1 스트라이드의 데이터 양에 어레이 내의 데이터 디스크 수를 곱한 값(즉, 기하학적 유추에서 면적을 산출하는 스트라이프 깊이 곱하기 스트라이프 폭)을 스트라이프 크기 또는 스트라이프 [5]폭이라고 부르기도 합니다.와이드 스트라이핑은 데이터 청크가 여러 어레이(아마도 시스템 내의 모든 드라이브)에 분산되어 있을 때 발생합니다.좁은 스트라이핑은 데이터 청크가 단일 어레이의 드라이브에 분산되어 있을 때 발생합니다.

적용들

데이터 스트라이핑은 Sybase와 같은 일부 데이터베이스와 IBM의 9394 RAMAC Array 하위 시스템과 같은 소프트웨어 또는 하드웨어 제어 하에 있는 특정 RAID 장치에서 사용됩니다.클러스터의 파일 시스템도 스트라이핑을 사용합니다.Oracle Automatic Storage Management를 사용하면 ASM 파일을 거친 스트라이핑 또는 미세한 스트라이핑할 수 있습니다.

RAID
RAID 0 의 일부 RAID 구성에서는 RAID 어레이의 단일 멤버 드라이브에 장애가 발생하면 저장된 모든 데이터가 손실됩니다.분산 패리티를 포함하고 용장성을 제공하는 RAID 5와 같은 다른 RAID 구성에서는 한 멤버 드라이브에 장애가 발생했을 경우 어레이 내의 다른 드라이브를 사용하여 데이터를 복원할 수 있습니다.
LVM2
데이터 스트라이핑은 Linux의 Logical Volume Management(LVM; 논리 볼륨 관리)를 통해서도 실현할 수 있습니다.LVM 시스템에서는 스트라이핑 패턴의 거칠기를 조정할 수 있습니다.LVM 툴을 사용하면 미러링과 함께 데이터 스트라이핑을 구현할 수 있습니다.LVM은 느리게 회전하는 스토리지를 위해 NVM Express에서 읽기 및 쓰기 캐싱의 추가적인 이점을 제공합니다.LVM에는 데이터 스트라이핑과 직접 관련이 없는 다른 이점(스냅샷, 동적 크기 조정 등)이 있습니다.
Btrfs 및 ZFS
RAID와 같은 기능을 갖추고 있지만 청크 무결성의 보안으로 불량 블록을 탐지하고 임의의 수의 추가 드라이브를 추가할 수 있는 유연성을 갖추고 있습니다.또한 데이터 스트라이핑(쓰기 시 복사 등)과 직접 관련이 없는 다른 이점도 있습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Red Hat Enterprise Linux 6 storage administration guide, chapter 6. The ext4 file system". Red Hat. 9 October 2014. Retrieved 8 February 2015.
  2. ^ "mdadm(8) – Linux man page". linux.die.net. Retrieved 8 February 2015.
  3. ^ "Linux kernel documentation: RAID setup". kernel.org. 11 November 2014. Retrieved 8 February 2015.
  4. ^ "RAID chunk size" (PDF). xyratex.com. January 2008. pp. 6–7. Archived from the original (PDF) on 1 August 2014. Retrieved 8 February 2015.
  5. ^ 스트라이프의 깊이는 스트라이프의 크기이며 스트라이프 단위로 불리기도 합니다.스트라이프 폭은 스트라이프 깊이와 스트라이프 세트의 드라이브 수를 곱한 것입니다."