數奇雜記  

기술보고서 "포스팅정보의 GZIP 압축에 따른 검색성능 저하 보고서"
김진숙 기술보고서 2002-07-30 (2007년 6월 25일 재수정) 

포스팅정보의 GZIP 압축에 따른 검색성능 저하 보고서

Berkeley DB를 기반으로 한창 Bio-KRISTAL을 개발하던 시기에 포스팅 정보에 대한 압축을 고민하다가 간단하게 zlib 압축 라이브러리를 활용하면 어떨까하고 실험을 해보았다. zlib은 gzip 알고리즘을 라이브러리로 만든 것이며 일반적인 압축 중심의 소프트웨어이며 실제로는 포스팅정보와 같은 정수형 데이터를 빠르게 압축하고 풀기에는 무리가 있다.

표1에서는 압축한 경우(zip.total)와 압축하지 않는 경우(Normal.total)의 포스팅정보 접근 시간을 보여주고 있다. 압축한 경우에는 전체적으로 5배 정도 검색속도가 저하되는 것을 보여준다. (실험은 Pentium-III Xeon 700MHz, 2GB RAM인 PC 서버에서 수행하였다. 압축시의 압축수준(compression leve)은 3으로 하였다.)

그림 1은 표 1의 데이터를 그래프로 도식화한 것이다. (많은 논문에서 언급하고 있는 바와 같이) 압축한 것이 압축하지 않은 것보다 느린 것을 알 수 있다. zip.total 그래프는 zip.io와 zip.decode를 포함한다. zlib을 이용할 경우에는 zip.decode(압축 해제)가 너무 많은 시간을 잡아먹기 때문에 zlib을 검색에 활용하기에는 무리가 있다는 것으로 결론을 내릴 수 있다.

많은 논문에서 제시하는 바와 같이 포스팅 정보와 같이 정수형으로 이루어지는 데이터에 대한 압축은 압축률보다는 압축해제 속도에 초점을 맞춰서 알고리즘을 선택해야 할 것 같다. (너무 뻔한 결과를 그래도 궁금해서 실험을 해본 것임.)

문의나 조언은 메일로... | 저작권처음으로