입출력 성능 향상을 위한 동적 압축 시스템
Dynamic Compression System for Improving I/O Performance
특허 요약
본 발명은 서버의 리소스 사용률에 따라 동적 압축 파라미터를 조정하여 압축 수준을 조절함으로써 동적 압축을 가능하게 하여 입출력 성능을 향상시킬 수 있도록 하는 입출력 성능 향상을 위한 동적 압축 방법에 관한 것이다. 본 발명에 따른 입출력 성능 향상을 위한 동적 압축 방법은 서버의 리소스 사용률에 따라 데이터를 동적으로 압축하기 위한 방법으로서, (a) 데이터 압축을 진행하는 서버(11)의 리소스(Resource) 사용률에 따라 압축 수준을 결정하는 동적 압축 파라미터를 조정하는 단계와; (b) 상기 조정된 동적 압축 파라미터를 포함하는, 압축을 위한 각 데이터 변수(Variable)에 사용되는 파라미터를 파일(500)에 저장하는 단계와; (c) 상기 파일(500)에 저장된 파라미터에 따라 데이터를 압축하는 단계;를 포함하여 이루어져, 서버 리소스 사용률 및 각 데이터 변수의 특성에 따라 압축 수준을 조절함으로써 최적의 스토리지 공간 사용을 보장할 수 있도록 제공된다.
청구항
번호청구항
1

서버의 리소스 사용률에 따라 데이터를 동적으로 압축하기 위한 방법으로서, (a) 데이터 압축을 진행하는 서버(11)의 리소스(Resource) 사용률에 따라 동적으로 변동되는, 데이터 압축 수준을 결정하는 동적 압축 파라미터를 계산하는 단계와;(b) 상기 계산된 동적 압축 파라미터에 따라 데이터를 압축하여 파일(500)에 저장하는 단계;를 포함하는 것을 특징으로 하는 동적 압축 방법.

2

제 1항에 있어서, 상기 (a) 단계는, (a1) 상기 서버(11)의 CPU, 메모리, 디스크 공간, 대역폭 사용률 중 어느 하나를 포함하는 서버 성능 메트릭(Metric)을 수집하는 단계와, (a2) 상기 수집된 서버 성능 메트릭 정보에 따라 서버 리소스 사용률을 획득하는 단계와;(a3) 상기 획득된 서버 리소스 사용률과 반비례하여, 서버 리소스 사용률이 높을수록 데이터 압축 수준은 낮아지고, 서버 리소스 사용률이 낮을수록 데이터 압축 수준은 상대적으로 높아지도록 동적 압축 파라미터를 계산하는 단계;를 포함하는 것을 특징으로 하는 동적 압축 방법.

3

제 2항에 있어서, 상기 (a1) 단계에서, 상기 수집된 서버 성능 메트릭 정보는 모니터링 서버(20)의 모니터링 대시보드(23)에 통합되어, 그래픽을 통해 시각화하여 표시되는 것을 특징으로 하는 동적 압축 방법.

4

제 2항에 있어서, 상기 (a3) 단계는, 상기 서버(11)의 리소스 사용률과 이와 대응되는 최적의 데이터 압축 파라미터가 연관 관계로 정의된 파라미터 Ruleset Matching을 통해, 상기 획득된 서버 리소스 사용률에 대응하는 최적의 동적 압축 파라미터가 결정되는 것을 특징으로 하는 동적 압축 방법.

5

제 2항에 있어서, 상기 (a3) 단계는, 상기 서버(11)의 리소스 사용률에 따라 최적의 데이터 압축 파라미터를 예측하는 학습된 머신러닝 모델을 통해, 상기 획득된 서버 리소스 사용률에 대응하는 최적의 동적 압축 파라미터가 결정되는 것을 특징으로 하는 동적 압축 방법.

6

제 1항에 있어서, 상기 (b) 단계에서, 상기 압축 데이터가 저장되는 파일(500)은 압축되는 복수의 데이터 변수(Variable; var_n)에 대한 메타데이터(metadata) 정보가 저장되는 Basic Header(510)와, 데이터 변수(var-n) 별로 계산된 최적의 동적 압축 파라미터 정보가 저장되는 최적 압축 파라미터(xxx.var-n_param)(521) 필드가 구비된 Dynamic Header(520)와, 상기 Dynamic Header(520)의 최적 압축 파라미터 필드에 저장된 동적 압축 파라미터에 따라 압축되는 데이터 변수의 압축 데이터가 저장되는 데이터(530) 섹션을 포함하는 것을 특징으로 하는 동적 압축 방법.

7

제 6항에 있어서, 상기 Dynamic Header(520) 섹션에는 상기 최적 압축 파라미터(xxx.var-n_param)(521) 필드에 저장된 동적 압축 파라미터에 따라 압축이 진행되는 데이터 변수의 압축 시작 인덱스를 기록하는 ‘# index’(522) 필드와, 다음 Dynamic Header의 위치를 나타내는 ‘Next pointer’(523) 필드가 구비되는 것을 특징으로 하는 동적 압축 방법.

8

제 7항에 있어서, 상기 Dynamic Header(520) 섹션의 최적 압축 파라미터(xxx.var-n_param)(521) 필드에 저장된 동적 압축 파라미터에 따라 압축이 진행되는 도중, 서버(11)의 리소스 사용률의 변화가 감지되면 압축 동작이 중단된 후, 새로운 Dynamic Header 섹션이 생성되어, 서버(11)의 리소스 사용률 변화에 따라 새롭게 계산된 동적 압축 파라미터 정보로 새로운 Dynamic Header 섹션의 최적 압축 파라미터(xxx.var-n_param) 필드가 업데이트 되며, 새로 업데이트 된 시점에서 새로운 동적 압축 파라미터가 적용되어 압축되지 않은 나머지 데이터의 압축이 시작되며, 새로 압축이 시작되는 압축 데이터의 시작 index가 ‘# index’에 업데이트 되는 것을 특징으로 하는 동적 압축 방법.

9

제 6항에 있어서, 상기 Dynamic Header(530) 섹션에서 상기 최적 압축 파라미터(xxx.var-n_param)(521) 필드에는 압축에 사용되는 압축 알고리즘 정보(xxx)가 포함된 것을 특징으로 하는 동적 압축 방법.