중복 제거(dedup) 등록 정보를 사용하여 중복된 데이터를 ZFS 파일 시스템에서 제거할 수 있습니다. 파일 시스템의 dedup 등록 정보가 사용으로 설정된 경우 중복 데이터 블록이 동기적으로 제거됩니다. 그 결과, 고유한 데이터만 저장되고 공통 구성 요소는 파일 간에 공유됩니다. 예를 들면 다음과 같습니다.
# zfs set dedup=on tank/home
다음 단계를 수행하여 시스템이 데이터 중복 제거를 지원할 수 있는지 확인될 때까지는 운용 시스템이 있는 파일 시스템에서 dedup 등록 정보를 사용으로 설정하지 마십시오.
중복 제거를 통해 공간 절약이 가능한 데이터인지 확인합니다. 중복 제거가 불가능한 데이터일 경우에는 중복 제거를 사용으로 설정할 필요가 없습니다. 다음 명령을 실행하는 데는 많은 메모리가 소비됩니다.
# zdb -S tank Simulated DDT histogram: bucket allocated referenced ______ ______________________________ ______________________________ refcnt blocks LSIZE PSIZE DSIZE blocks LSIZE PSIZE DSIZE ------ ------ ----- ----- ----- ------ ----- ----- ----- 1 2.27M 239G 188G 194G 2.27M 239G 188G 194G 2 327K 34.3G 27.8G 28.1G 698K 73.3G 59.2G 59.9G 4 30.1K 2.91G 2.10G 2.11G 152K 14.9G 10.6G 10.6G 8 7.73K 691M 529M 529M 74.5K 6.25G 4.79G 4.80G 16 673 43.7M 25.8M 25.9M 13.1K 822M 492M 494M 32 197 12.3M 7.02M 7.03M 7.66K 480M 269M 270M 64 47 1.27M 626K 626K 3.86K 103M 51.2M 51.2M 128 22 908K 250K 251K 3.71K 150M 40.3M 40.3M 256 7 302K 48K 53.7K 2.27K 88.6M 17.3M 19.5M 512 4 131K 7.50K 7.75K 2.74K 102M 5.62M 5.79M 2K 1 2K 2K 2K 3.23K 6.47M 6.47M 6.47M 8K 1 128K 5K 5K 13.9K 1.74G 69.5M 69.5M Total 2.63M 277G 218G 225G 3.22M 337G 263G 270G dedup = 1.20, compress = 1.28, copies = 1.03, dedup * compress / copies = 1.50
예상 중복 제거 비율이 2보다 클 경우 중복 제거를 통한 공간 절약 효과가 있습니다.
이 예제에서 중복 제거 비율(dedup = 1.20)이 2보다 작으므로 중복 제거를 사용으로 설정하지 않는 것이 좋습니다.
다음과 같이 시스템 메모리가 중복 제거를 지원할 정도로 충분한지 확인합니다.
각 코어 내부의 중복 제거 테이블 항목은 약 320바이트입니다.
할당된 블록 수에 320을 곱합니다. 예를 들면 다음과 같습니다.
in-core DDT size = 2.63M x 320 = 841.60M
중복 제거 테이블이 메모리에 적합할 때 중복 제거 성능이 가장 좋습니다. 중복 제거 테이블을 디스크에 기록해야 할 경우 성능이 저하됩니다. 메모리 리소스가 부족한 상태로 파일 시스템에서 중복 제거를 사용으로 설정하면 파일 시스템과 관련된 작업을 수행할 때 시스템 성능이 저하될 수 있습니다. 예를 들어, 메모리 리소스가 부족한 상태로 중복 제거가 사용으로 설정된 큰 파일 시스템을 제거하면 시스템 성능이 저하될 수 있습니다.