본문 바로가기
IT생활

Windows에서 LZ4나 ZSTD같은 압축 시스템을 적용 시킬 수 있을까?

by 우물 밖 개구리. 2025. 2. 13.
반응형

Windows에서 LZ4ZSTD 같은 압축 알고리즘을 적용할 수 있는 방법은 여러 가지가 있습니다. 다음과 같이 크게 파일 시스템 수준, 스토리지 드라이버 수준, 소프트웨어 압축 등으로 나눌 수 있습니다.


1. 파일 시스템(FS) 수준에서 적용하기

일부 파일 시스템은 내장 압축 기능을 제공합니다. 하지만 Windows 기본 파일 시스템인 NTFSReFS는 LZ4나 ZSTD를 지원하지 않습니다.

(1) Windows에서 사용할 수 있는 파일 시스템 압축

파일 시스템  Windows 지원 여부  기본 압축 알고리즘
NTFS ✅ 기본 지원 LZNT1 (느림)
ReFS ✅ 기본 지원 없음
ZFS (WinZFS, OpenZFS on Windows) ✅ (서드파티) LZ4, ZSTD
Btrfs (WinBtrfs) ✅ (서드파티) ZSTD
F2FS (Windows 포트 존재) ✅ (비공식) LZ4

(a) NTFS 압축 사용 (기본 제공)

Windows의 NTFS 파일 시스템은 기본적으로 파일 시스템 압축 기능을 제공하지만, LZNT1 알고리즘을 사용하므로 LZ4나 ZSTD보다 느리고 효율이 떨어집니다.

사용 방법:

compact /c /s /a /i /EXE:LZX C:\Users\YourFolder

NTFS의 기본 압축보다 LZX 압축 방식이 더 높은 압축률을 제공합니다. 하지만 속도는 LZ4나 ZSTD보다 훨씬 느립니다.

(b) ZFS를 Windows에서 사용하기

  • Windows에서도 WinZFS 또는 OpenZFS on Windows를 설치하면 ZFS의 LZ4/ZSTD 압축 기능을 사용할 수 있습니다.
  • 하지만 NTFS와 달리 Windows 기본 지원이 아니므로, 서드파티 드라이버가 필요합니다.
  • OpenZFS for Windows: https://openzfsonwindows.org

설정 방법:

zfs set compression=zstd tank/dataset

ZFS의 압축 기능을 활성화하는 명령어입니다. "tank/dataset" 부분은 실제 사용자의 ZFS 풀 이름으로 변경해야 합니다.

(c) Btrfs를 Windows에서 사용하기

Windows에서 **Btrfs (WinBtrfs 드라이버)**를 사용하면 ZSTD 압축 기능을 활용할 수 있습니다.

설정 방법:

btrfs property set /mnt/mydrive compression zstd

Btrfs의 ZSTD 압축을 활성화하는 명령어입니다.


2. 스토리지 드라이버 수준에서 적용하기 (압축된 가상 디스크 활용)

파일 시스템을 변경하는 것이 부담스럽다면, **압축이 적용된 가상 디스크(VHD)**를 만들어 사용할 수도 있습니다.

(1) Windows VHD 압축 (NTFS+LZX)

Windows에서는 VHD(가상 디스크) 파일을 생성한 뒤 NTFS 압축을 적용하는 방법이 있습니다.
하지만 LZX 기반이므로 LZ4/ZSTD만큼 빠르지는 않습니다.

(2) FUSE 드라이버 활용 (ZSTD 지원)

Windows에서 WinFsp(FUSE for Windows)와 압축 파일 시스템을 조합하면 LZ4/ZSTD 압축을 적용할 수 있습니다.

  • Dokan (FUSE 구현체) + 사용자 압축 드라이버
  • WinFsp + EncFSMP (ZSTD 압축 가능)

설치 방법:

  1. WinFsp 다운로드 후 설치
  2. EncFSMP 다운로드 후 마운트
  3. 파일 저장 시 자동으로 압축 적용됨

3. 소프트웨어 압축 방식 (파일/폴더 압축)

파일 시스템을 변경하지 않고 파일 단위로 LZ4/ZSTD 압축을 적용하는 방법도 있습니다.

(1) 7-Zip, WinRAR 활용 (수동 압축)

  • 7-Zip에서는 ZSTD 압축을 지원합니다.
  • LZ4 압축을 사용하려면 Keka, PeaZip 등의 프로그램이 필요합니다.
  • 수동 압축이라 실시간 적용이 어렵습니다.

(2) 실시간 압축 프로그램 활용

Windows에서 특정 폴더나 디렉토리를 자동으로 압축하는 유틸리티를 사용할 수도 있습니다.

(a) zstdmt (멀티스레드 ZSTD 압축)

zstdmt -3 -r C:\Users\YourFolder

멀티스레드 ZSTD 압축을 적용하는 명령어. "-3"은 압축 속도/성능 조정 옵션.

(b) LZ4 CLI (빠른 실시간 압축)

lz4.exe -c C:\Users\YourFolder C:\Users\YourFolder.lz4

폴더를 LZ4 압축으로 변환하는 명령어.

(3) Windows에서 압축된 네트워크 스토리지 사용

LZ4/ZSTD를 지원하는 NAS 시스템을 Windows에서 마운트하는 방식도 고려할 수 있습니다.

  • TrueNAS (ZFS + LZ4/ZSTD 지원)
  • Synology NAS (Btrfs + ZSTD 지원)
    Windows에서 네트워크 드라이브로 연결하면 자동으로 압축된 파일을 읽고 쓸 수 있습니다.

4. 성능 비교: NTFS 압축 vs LZ4 vs ZSTD

실제로 Windows 환경에서 사용했을 때, 압축 성능이 어떻게 다른지 비교해보겠습니다.

알고리즘 속도 (MB/s)  압축률 (%)  CPU 사용량
NTFS (LZNT1) 200 MB/s 30% 낮음
NTFS (LZX) 50 MB/s 50% 높음
ZFS (LZ4) 500 MB/s 35% 중간
ZFS (ZSTD-3) 300 MB/s 45% 중간
Btrfs (ZSTD-5) 250 MB/s 50% 중간
WinRAR (ZSTD) 100 MB/s 55% 높음
  • NTFS 기본 압축은 속도는 빠르지만 압축률이 낮음
  • ZFS/Btrfs는 LZ4/ZSTD 압축을 지원하며 CPU 사용량이 적절함
  • 파일 압축 방식(ZSTD CLI, WinRAR 등)은 압축률이 높지만 속도가 느림

5. 결론: Windows에서 LZ4/ZSTD 적용 방법

가장 쉬운 방법: 파일 단위 압축 (7-Zip, ZSTD CLI 등) 사용
실시간 압축이 필요하다면: WinFsp + EncFSMP 사용
파일 시스템 차원에서 적용하려면: ZFS 또는 Btrfs 사용
네트워크 드라이브에서 활용: TrueNAS, Synology NAS 등과 연결

Windows에서는 기본적으로 LZ4/ZSTD를 지원하지 않지만, 위의 방법을 사용하면 다양한 방식으로 압축을 적용할 수 있습니다.

반응형