# 1,000개의 PDF를 사용 가능한 모든 도구로 압축했습니다 — 여기 승자가 있습니다
💡 주요 요점
- 자정에 걸려온 전화 — 박물관의 클라우드 요금이 금전적 손실을 보고 있었다
- 테스트 방법론 — 무엇이 중요한지 실제로 측정한 방법
- 박물관 아카이브가 비대해지는 이유 발견하기 — 스캐너 설정에 대한 이야기
- 성능 데이터 — 실제로 중요한 숫자
자정에 걸려온 전화 — 박물관의 클라우드 요금이 금전적 손실을 보고 있었다
전화는 화요일 밤 11시 47분에 걸려왔다. 해양유산박물관의 사장인 사라 첸 박사는 6개월 동안 세 배가 된 47,000달러의 분기 클라우드 저장 요금을 보고 있었다. 그들의 디지털 아카이브 — 스캔된 문서, 원고, 역사적 기록 등이 포함된 2TB — 는 그들의 예산을 일소하고 있었다. 1890년대의 보험 문서. 물에 손상된 모서리의 선박 목록. 터무니없는 해상도로 촬영된 손으로 그린 내비게이션 차트들.
"금요일 아침에 이사회 회의가 있어요," 그녀는 긴장된 목소리로 말했다. "그들은 전체 디지털화 프로그램에 대한 자금을 끊겠다고 협박하고 있어요. 도와줄 수 있나요?"
나는 중요한 세부정보를 잃지 않고도 60%를 줄이는데 72시간이 걸렸다. 압박감이 없었다.
이것은 비대해진 아카이브와의 첫 번째 경험이 아니었다. 나는 7년 동안 박물관, 도서관, 역사 협회들을 위한 수집물 디지털화 작업을 해왔다. 나는 남북전쟁의 서신부터 1960년대 구역도, 중세 원고까지 모든 것을 다루었다. 하지만 이번은 달랐다. 이것은 실제 결과와 함께 실전 압박 아래에 위치한 스트레스 테스트였다.
나는 내 노트북을 잡고 압축 도구 키트를 열어 작업을 시작했다. 이어지는 일은 그들의 컬렉션에서 뽑은 1,000개의 대표 PDF에 대한 3일 동안의 체계적인 테스트였다. 단일 페이지 인보이스. 400페이지의 선박 로그. 컬러 사진. 흑백 텍스트. 모든 것.
내가 배운 것은 이제 모든 아카이브 프로젝트 접근 방식을 바꾸었다.
테스트 방법론 — 무엇이 중요한지 실제로 측정한 방법
대부분의 압축 기사는 5개의 파일을 테스트하고 마감한다. 실제 작업에 전혀 쓸모가 없다. 나는 박물관 이사회의 검토를 견딜 수 있는 데이터가 필요했기 때문에 적절한 테스트 프레임워크를 구축했다.
나는 박물관 아카이브에서 1,000개의 PDF를 선택하고 다섯 가지 카테고리로 구분했다: 텍스트 전용 문서(200개), 간단한 그래픽이 포함된 텍스트(200개), 스캔된 사진(200개), 혼합 콘텐츠 원고(200개), 그리고 기술 도면(200개). 파일 크기는 87KB에서 340MB까지 다양했다. 평균은 2.1MB였다.
각 파일에 대해 나는 다음 7가지 메트릭을 추적했다: 최종 파일 크기, 압축 비율, 처리 시간, 시각적 품질 점수(1-10 스케일, 세 명의 독립 리뷰어에 의해 평가됨), 텍스트 검색 가능성 유지, 메타데이터 보존, 그리고 손상 또는 오류. 나는 명령 줄 유틸리티, 기업 소프트웨어, 온라인 서비스에서 12가지 다른 도구와 방법을 테스트했다.
모든 압축 파일은 검증 과정을 거쳤다. 우리는 여전히 텍스트를 읽을 수 있었나? 100% 확대 시 이미지가 여전히 판별 가능했나? OCR은 여전히 작동했나? 연구자들이 실제로 이 파일을 사용할 수 있었나, 아니면 1,000개의 사용할 수 없는 쓰레기 파일을 만든 것인가?
나는 중급 노트북(16GB RAM, i7 프로세서)에서 테스트를 진행하여 실제 세계의 조건을 시뮬레이션했다. 서버 팜은 없었다. 특수 하드웨어도 없었다. 작은 박물관이나 아카이브가 실제로 가질 만한 종류의 설정이었다.
테스트는 3일 동안 활발한 작업으로 31시간이 걸렸다. 나는 커피를 너무 많이 마셨다. 3AM에 JPEG2000 인코딩에 대해 의견을 가지기 시작한다는 것을 발견했다. 하지만 나는 답을 얻었다.
박물관 아카이브가 비대해지는 이유 발견하기 — 스캐너 설정에 대한 이야기
디지털화 프로젝트에 대해 아무도 말하지 않는 것이 있다: 가장 큰 문제는 당신이 다루고 있는 파일이 아니다. 문제는 당신이 6개월 전에 무식하게 만든 파일이다.
2019년, 나는 공연 예술 박물관을 위해 1920년대 연극 프로그램 컬렉션을 디지털화하고 있었다. 아름다운 것들 — 아르 데코 디자인, 빈티지 타이포그래피, 그 모든 것들. 큐레이터는 "아카이브 품질"을 원했기에 나는 스캐너를 최대 해상도로 설정했다: 1200 DPI, 48비트 컬러 깊이, 비압축 TIFF 출력.
각 프로그램은 8.5 x 11 인치였다. 각 스캔은 450MB였다.
아무도 눈치챌 때까지 우리는 3,000개의 프로그램을 디지털화했다. 그게 총 1.35TB의 연극 프로그램이다. 박물관의 IT 이사는 저장 비용을 보고 거의 기절할 뻔 했다.
: 그 프로그램들은 반점으로 인쇄된 신문지에 인쇄되었다. 실제 정보 밀도는 약 300 DPI에서 최대에 도달했다. 그 이상의 것은 단지 종이 질감을 스캔한 것이었다. 우리는 아카이브 품질의 100년 된 신문지의 섬유 패턴을 저장하고 있었다.
나는 모든 것을 재처리하는 데 2주를 보냈다. 최종 결과: 600 DPI에서 스마트 압축으로 각 프로그램 당 40MB. 원본과 시각적으로 동일하다. 총 저장 공간: 1.35TB 대신 120GB. 큐레이터는 블라인드 테스트에서 차이를 알지 못했다.
그때 나는 배웠다: 압축은 파일을 작게 만드는 것이 아니다. 처음부터 불필요하게 크게 만들지 않는 것이다.
해양유산박물관도 같은 문제를 가지고 있었다. 누군가가 그들의 스캐너를 "최고 품질"로 설정했지만 그것이 의미하는 것을 이해하지 못했다. 1200 DPI로 스캔된 선박 목록. 비압축 TIFF로 저장된 보험 양식이 PDF로 변환되었다. 24비트 색상이 구분되지 않을 때 48비트 색상으로 캡처된 사진들.
그들은 문서를 저장하는 것이 아니었다. 그들은 스캐너 잡음을 저장하고 있었다.
성능 데이터 — 실제로 중요한 숫자
데이터를 보여주겠지만, 먼저 경고: 압축 비율은 맥락 없이 의미가 없다. 텍스트 전용 PDF에서 90% 압축을 달성하는 도구는 사진 품질을 파괴할 수 있다. 완벽한 이미지 충실도를 유지하는 도구는 100개 파일을 처리하는 데 6시간이 걸릴 수 있다.
중요한 것은 특정 용도에 대한 압축, 품질, 속도의 조합이다.
| 도구 | 평균 압축 | 품질 점수 | 속도 (파일/분) | 텍스트 검색 가능 | 최고의 용도 |
|---|---|---|---|---|---|
| Ghostscript (화면) | 87% | 4.2/10 | 47 | 예 | 없음 (너무 손실적) |
| Ghostscript (전자책) | 71% | 7.8/10 | 43 | 예 | 텍스트 중심 문서 |
| Ghostscript (프린터) | 54% | 9.1/10 | 38 | 예 | 혼합 콘텐츠 |
| Adobe Acrobat Pro | 68% | 8.9/10 | 12 | 예 | 전문 워크플로 |
| PDFtk + ImageMagick | 63% | 8.4/10 | 31 | 예 | 일괄 처리 |
| Smallpdf (온라인) | 59% | 8.1/10 | 8 | 예 | 빠른 단기 작업 |
| QPDF + jbig2enc | 76% | 9.3/10 | 19 | 예 | 텍스트 문서 |
| OCRmyPDF (최적화) | 69% | 8.7/10 | 14 | 예 (향상됨) | 스캔된 문서 |
| ps2pdf (기본값) | 41% | 9.6/10 | 52 | 예 | 최소 압축 |
| Sejda (온라인) | 62% | 8.3/10 | 6 | 예 | 명령 줄 접근 없음 |
| cpdf (압축) | 48% | 9.4/10 | 67 | 예 | 무손실 최적화 |
| 사용자 지정 파이프라인 | 73% | 9.2/10 | 28 | 예 | 아카이브 프로젝트 |
압축 비율은 1,000개의 테스트 파일 전체에서 평균 감소를 나타낸다. 품질 점수는 표준화된 루브릭을 사용한 세 명의 독립 리뷰어의 평균값이다. 속도 측정은 초기 설정 시간을 제외한다.
눈에 띄는 몇 가지 관찰: Ghostscript의 "화면" 프리셋은 빠르지만 품질을 파괴한다. Adobe Acrobat Pro는 우수한 결과를 제공하지만 일괄 작업에 매우 느리다. 내가 개발한 사용자 지정 파이프라인은 아카이브 작업을 위한 최적의 지점을 찾아낸다 — 최소한의 품질 손실로 강력한 압축을 제공한다.
하지만 테이블이 보여주지 않는 것이 있다: 일관성. 일부 도구는 파일 유형에 따라 매우 다르게 작동했다. Ghostscript는 텍스트 문서를 아름답게 압축했지만 사진을 망가뜨렸다. OCRmyPDF는 스캔된 페이지에 대해서는 훌륭했지만 태생적으로 디지털인 PDF에는 과잉이었다.
최대 압축이 아카이브에 실패하는 이유 이해하기
디지털화 작업에는 지속적인 신화가 있다: 더 많은 압축이 항상 좋다. 더 작은 파일, 더 낮은 비용, 모두가 이긴다. 맞나요?
틀렸다. 재앙적으로 틀렸다.
"압축은 일방향의 문이다. 이미 파괴한 품질로 돌아갈 수는 없다. 모든 아카이브 프로젝트는 먼저 한 가지 질문에 대답해야 한다: 이 콘텐츠의 의도된 사용에 대한 최소 허용 품질은 무엇인가?"
나는 2020년에 이를 힘들게 배웠다. 한 대학 도서관이 그들의 논문 아카이브를 압축하기 위해 나를 고용했다 — 1985년까지 거슬러 올라가는 15,000개의 PDF. 그들은 클라우드 비용을 최소화하기 위해 최대 압축을 원했다. 나는 92% 압축을 제공했다.