Abstract
In this thesis, the problem of computing approximate answers to continuous sliding-window joins over data streams when the available memory may be insufficient to keep the entire join state. One approximation scenario is to provide a maximum subset of the result, with the objective of losing as few result tuples as possible. An alternative scenario is to provide a random sample of the join result, e.g., if the output of the join is being aggregated. It is shown formally that neither approximation can be addressed effectively for a sliding-window join of arbitrary input streams. Previous work has addressed only the maximum-subset problem, and has implicitly used a frequency based model of stream arrival. There exists a sampling problem for this model. More importantly, it is shown that a broad class of applications for which an age-based model of stream arrival is more appropriate, and both approximation scenarios under this new model are addressed. Finally, for the case of multiple joins being executed with an overall memory constraint, an algorithm for memory allocation across the join that optimizes a combined measure of approximation in all scenarios considered is provided.
이 논문은 슬라이딩 윈도우를 사용하는 스트림 데이터에서 모든 조인 연산의 상태를 저장하기에 메모리가 충분하지 않을 경우에, 연속적인 슬라이딩 윈도우 조인 연산의 근사치 답을 구하는 문제에 대한 연구이다. 근사치를 구하는 두 가지 방법으로는 최대 부분집합으로 근사치를 구하는 방법과 조인 결과에서 임의의 결과를 택하는 방법이 있다. 전자는 잃어버리는 튜플의 수를 최소화 하고, 후자는 조인의 결과가 집계로 나타날 때 사용된다. 이 논문에서는 임의의 입력 데이터에 슬라이딩 윈도우가 사용되는 경우 두 가지 방법으로 얻는 근사치 모두 효율적이지 못함을 보여준다. 기존의 최대 부분집합에 의해 근사치를 구하는 모델에서는 빈도-기반 모델을 사용하였는데. 샘플링이 문제가 되었다. 오히려 스트림 도착한 이후의 연령-기반 모델이 많은 응용분야에서 더 적절하게 사용 될 수 있음을 보여주고 있다. 이 논문에서는 최대 부분 집합과 임의의 결과라는 두 가지 근사치 측정법을 분석, 그 효율성을 비교하여 보여 준다. 또한, 메모리가 제한 되어있는 환경에서 다중 조인 연산이 수행 될 경우에, 어떤 경우에도 근사치 측정을 최적화할 수 있도록, 조인 연산 전체에 필요한 메모리를 적절하게 할당하는 알고리즘의 효율성을 분석한다.