데이터 스트림에서 연속질의 처리를 위한 큐 메모리 관리 기법

연속적이고 무한히 발생되는 데이터 스트림을 관리하는 데이터 스트림 관리시스템(DSMS)은 연속질의를 이용하여 스트림을 처리한다. 연속질의는 질의 별로 독립적인 큐를 유지하기 때문에 질의 개수가 증가함에 따라서 메모리 비용이 증가되며, 잦은 메모리 할당으로 인한 시스템의 성능 저하를 갖는다. 이러한 문제점을 해결하기 위한 기존의 연구로 메모리 풀을 이용한 메모리 관리 기법이 있다. 하지만 페이지의 크기가 고정되어 있기 때문에 각 질의마다 필요로 하는 데이터 스트림의 최적의 크기에 적합하게 할당되지 못하여 메모리를 낭비하는 문제점이 있다. 본 논문에서는 이러한 문제를 해결하기 위해 연속질의 처리를 위한 큐 메모리 관리 기법을 제안한다. 제안기법은 큐 관리 테이블에서 관리하는 각각의 큐 메모리들을 타임스탬프를 가지고 일정한 기간을 주기로 큐 메모리의 사용량을 분석한다. 분석된 큐 메모리들은 이전의 큐 메모리의 사용량과 현재 사용된 큐 메모리의 사용량을 비교함으로써 상한 값과 하한 값을 구함으로써 현재 큐 메모리에서 가지고 있는 사용량을 추가할 것인지, 줄일 것인지를 판단하여, 메모리의 사용량을 최적화 함으로써 시스템의 메모리 가용성을 향상한다. 제안 기법은 성능평가를 통해 메모리의 가용성이 기존의 방식에 비하여 향상된 성능을 보인다.