데이터 중복 제거
데이터의 중복 복사본이 제거되는지 여부를 제어합니다. 중복 제거는 동기식이며, 범위가 풀 전체이며, 블록을 기반으로 하며 프로젝트 기준별 또는 공유 기준별로 사용으로 설정할 수 있습니다. 프로젝트 또는 공유에 대한 일반 등록 정보 화면의 데이터 중복 제거 확인란을 선택하여 중복 제거를 사용으로 설정합니다. 상태 대시보드의 사용 영역에 중복 제거 비율이 나타납니다.
중복 제거가 사용으로 설정된 상태에서 쓰여진 데이터는 데이터 체크섬에 의해 인덱스화된 중복 제거 테이블에 입력됩니다. 중복 제거는 암호화 기법으로 강력한 SHA-256 체크섬을 강제로 사용합니다. 후속 쓰기는 중복 데이터를 식별하고 디스크의 기존 복사본만 보유합니다. 중복 제거는 동일한 레코드 크기로 쓰여진 동일한 크기 데이터의 블록 사이에서만 수행될 수 있습니다. 항상 최상의 결과를 위해 레코드 크기를 데이터를 사용하는 응용 프로그램의 해당 레코드 크기로 설정합니다. 작업량 스트리밍의 경우 큰 레코드 크기를 사용합니다.
데이터에 중복 항목이 없는 경우 데이터 중복 제거를 사용으로 설정하면 어떠한 혜택도 제공하지 않고 오버헤드(보다 CPU 집중적인 체크섬 및 온디스크 중복 제거 테이블 항목)를 추가합니다. 데이터에 중복 항목이 있는 경우 데이터 중복 제거를 사용으로 설정하면 지정된 블록의 복사본 하나(발생 횟수에 상관없이)만 저장하여 공간을 절약합니다. 체크섬은 계산하는 데 더 많은 비용이 들고 중복 제거 테이블의 메타 데이터는 액세스하고 유지 관리해야 하므로 중복 제거는 성능에 영향을 줍니다.
중복 제거는 공유의 계산된 크기에는 영향을 주지 않지만 풀에 사용된 공간의 양에는 영향을 줍니다. 예를 들어, 두 공유에 동일한 1GB 파일이 포함되어 있는 경우 각각의 크기가 1GB인 것처럼 표시되지만 풀에 대한 합계는 1GB일 뿐이며 중복 비율이 2x로 보고됩니다.
성능 경고: 성능 경고: 본질적으로 중복 제거의 경우 블록이 쓰여지거나 비워질 때 중복 제거 테이블을 수정해야 합니다. 중복 제거 테이블이 DRAM에 맞지 않는 경우 쓰기 및 비우기 작업 시 이전에는 없었던 상당한 임의 읽기 작업을 유발할 수 있습니다. 따라서 중복 제거를 사용으로 설정하는 경우 성능에 심각한 영향을 줄 수 있습니다. 특히 공유 또는 스냅샷 삭제의 경우 중복 제거를 사용으로 설정한 경우 성능 저하의 영향이 풀 전체적으로 전파될 수 있습니다. 일반적으로 공유에 매우 높은 비율의 중복된 데이터가 있으며 중복된 데이터와 해당 데이터를 참조하는 테이블이 안정적으로 DRAM에 배치될 수 있다고 알려져 있지 않으면 중복 제거를 사용으로 설정하지 않는 것이 좋습니다. 중복 제거에 의해 성능이 저하되었는지 여부를 확인하려면 Chapter 8, ZFSSA 환경 설정을 사용으로 설정한 다음 Oracle ZFS Storage Appliance Analytics 설명서
의 Analytics를 사용하여 "DMU 객체 유형에 의해 분해된 ZFS DMU 작업"을 측정하고 ZFS 작업과 비교하여 보다 높은 비율의 지속된 DDT 작업(데이터 중복 제거 테이블 작업)을 확인합니다. 이 작업이 수행 중인 경우 중복 제거 테이블을 서비스하기 위해 파일 I/O보다 더 많은 I/O가 생성됩니다.