본문 바로가기

ZIP 파일은 작은데 풀면 커지는 이유: 압축 전후 크기 확인

파일·브라우저 실험작성 SW픽 편집부 · 발행
프로그램
파일 관리
환경
macOS 26.6.2 · 자체 생성 ZIP 항목
버전
Python 3.12.14 · zipfile·DEFLATE
실험·자료 확인일

ZIP 전체 크기: 239 bytes / 항목 압축 크기: 119 bytes / 해제할 파일 크기: 100,000 bytes

ZIP 파일은 작은데 풀면 커지는 이유: 압축 전후 크기 확인의 핵심 문제와 공개 예제 결과를 정리한 표지

ZIP 파일의 용량이 작다고 압축을 풀 공간도 적게 필요한 것은 아닙니다. 압축된 항목의 크기와 해제한 파일의 크기는 서로 다릅니다. 긴 반복 문장은 압축률이 높을 수 있고, 이미 압축된 사진·영상은 같은 정도로 줄지 않을 수 있습니다. 해제 전에 원본 목록과 예상 해제 크기를 확인해야 남은 공간 부족이나 불필요한 덮어쓰기를 줄일 수 있습니다.

먼저 구분할 조건

ZIP 전체 크기에는 압축된 내용 외에도 항목 이름·디렉터리 정보 같은 구조가 포함됩니다. 각 항목의 압축 크기 합과 ZIP 전체 크기도 완전히 같은 숫자는 아닐 수 있습니다. 작업 공간을 계산할 때는 해제할 파일의 총 크기, 기존 ZIP 보관, 임시 작업과 백업 공간을 나눠 봐야 합니다. 알 수 없는 ZIP의 높은 압축률은 단순한 효율의 표시만으로 받아들이지 말고 항목 수·경로·해제 크기를 함께 살펴야 합니다.

ZIP 파일은 작은데 풀면 커지는 이유: 압축 전후 크기 확인의 공개 예제 관찰 결과와 확인 항목
공개 예제의 확인 항목을 정리한 설명용 도식입니다. 실제 제품 앱 화면은 아닙니다.

직접 확인한 예제와 방법

실행 기능이 없는 ABCD라는 텍스트를 25,000번 반복해 100,000바이트의 example.txt를 만들고 Python 3.12.14의 zipfile로 압축했습니다. ZIP 목록에서 전체 ZIP 바이트, 항목 압축 바이트, 해제할 파일 바이트를 각각 읽었습니다. 본문의 표는 이 공개 ZIP을 실제로 다시 확인한 값입니다. 큰 업무 파일이나 과도한 해제 크기를 가진 자료는 사용하지 않았으며 압축률 차이를 설명하는 작은 예제입니다.

이 글의 공개 자료에서 확인한 결과
확인 항목 관찰 결과
ZIP 전체 크기 239 bytes
항목 압축 크기 119 bytes
해제할 파일 크기 100,000 bytes

결과를 해석하는 기준

100,000바이트라는 해제 크기는 ZIP이 차지하는 공간을 보고 짐작한 값이 아니라 항목 정보와 원래 데이터의 값입니다. 이런 차이가 여러 항목에서 합쳐지면 실제 필요한 공간이 다운로드 용량보다 훨씬 커질 수 있습니다. 파일이 여러 폴더에 퍼져 있으면 항목 경로와 이미 존재하는 파일도 확인해야 합니다.

반복 텍스트에서 얻은 압축률을 사진이나 영상으로 일반화하면 안 됩니다. 데이터의 반복성·이미 압축된 형식·압축 방법에 따라 결과가 달라집니다. 더 높은 압축을 선택해 시간이 오래 걸렸다고 원본의 정확성이나 해제 안전성이 자동으로 좋아지는 것도 아닙니다. 완료 판단에는 목록과 실제 해제 결과의 비교가 필요합니다.

다운로드 공간과 해제 작업 공간이 다릅니다

작성 예제로 ZIP은 작은데 해제 크기는 기기의 남은 공간보다 큰 상황을 가정합니다. 다운로드가 끝났어도 해제 작업은 실패할 수 있습니다. 이미 있는 ZIP·해제 파일·독립 백업을 함께 보관할 공간을 따로 고려해야 합니다.

상황 확인할 질문 먼저 할 일
다운로드는 가능·해제는 부족 예상 해제 크기가 얼마인가 해제 공간을 기준으로 계획
파일 일부만 만들어짐 어느 항목이 실패했나 완성본으로 쓰지 않고 분리
이미 압축된 사진·영상 같은 압축률을 기대했나 항목별 실제 결과 확인

공간 확보를 위해 원본 ZIP부터 지우지 않습니다. 정상 결과가 확인된 뒤 필요한 원본·백업 보관 규칙에 따라 정리해야 합니다.

내 자료에서 확인할 순서

  1. ZIP 원본을 보존하고 항목 목록에서 전체 경로·항목 수·해제 크기를 확인합니다. 원래 자료 목록을 받은 경우 함께 대조합니다.
  2. 압축 크기와 해제 크기를 구분해 기록하고 디스크의 사용 가능한 공간을 확인합니다. 작업용·백업용 공간도 별도로 남깁니다.
  3. 알 수 없는 항목이나 예상 밖의 경로가 있으면 바로 풀지 않습니다. 출처와 필요한 최종 자료를 확인합니다.
  4. 새 빈 폴더에서 해제하고 기존 업무 폴더에 바로 덮어쓰지 않습니다. 같은 이름의 파일이 있는지 먼저 봅니다.
  5. 해제 뒤 파일 수·전체 경로·실제 파일 크기를 원본 목록과 비교합니다. 파일이 필요한 앱에서 정상 열리는지도 확인합니다.
  6. 해제 결과가 정상이라는 확인 전에는 ZIP을 지우지 않습니다. 누락이나 충돌이 있으면 원본과 로그를 보존해 다시 확인합니다.

잘못 바꾸었거나 확인이 어려울 때

공간이 부족하면 중간에 만들어진 일부 파일을 완성본으로 사용하지 않습니다. 성공적으로 풀린 항목과 실패 항목을 나누고, 필요한 공간을 확보한 뒤 빈 폴더에서 다시 확인해야 합니다. 큰 해제 크기나 출처 불명의 구조가 보이면 제한 없이 반복 해제하지 말고 제공자에게 정상 원본과 기대한 목록을 요청하십시오.

정상 완료 기준

정상 완료는 해제한 파일의 개수·경로·크기가 기대한 자료와 맞고, 필요한 내용이 정상적으로 읽히는 상태입니다. ZIP 크기가 줄었다는 사실과 자료가 올바르게 보존되었다는 사실을 따로 검사해야 합니다. 중요한 백업은 실제 복원한 대표 파일과 원본을 비교한 결과까지 남기는 편이 좋습니다.

같은 예제를 다시 확인할 자료

이번 시험은 100,000바이트의 반복 텍스트 한 개를 사용했습니다. 모든 데이터의 압축률을 예측하는 계산이나 알 수 없는 ZIP의 안전성을 보증하는 검사는 아닙니다. 실제 자료는 항목별 크기와 출처를 따로 확인해야 합니다.

자료는 비민감 가상 예제입니다. 손상·불일치라고 표시한 파일은 차이를 확인하는 실험용이며 업무 원본으로 사용하지 않습니다. 파일 크기·SHA-256 목록으로 내려받은 원본을 확인할 수 있습니다.

항목 수가 맞아도 같은 경로가 겹칠 수 있습니다. ZIP 내부 중복 경로 실험을 함께 보면 다른 검사 지점을 구분할 수 있습니다.

OFFICIAL SOURCES

확인한 공식 자료

CORRECTION

화면이 달라졌나요?

운영체제와 프로그램 버전, 달라진 단계를 알려주시면 다시 확인합니다.

정정 요청 보내기