Abstract
In many scientific and commercial applications such as Earth Observation System (EOSDIS) and mobile Phone services tracking a large number of clients, it is a daunting task to archive and index ever increasing volume of complex data that are continuously added to databases. To efficiently manage multidimensional data in scientific and data warehousing environments, R-tree based index structures have been widely used. In this paper, we propose a scalable technique called seeded clustering that allows us to maintain R-tree indexes by bulk insertion while keeping pace with high data arrival rates. Our approach uses a seed tree, which is copied from the top k levels of a target R-tree, to classify input data objects into clusters. We then build an R-tree for each of the clusters and insert the input R-trees into the target R-tree in bulk one at a time. We present detailed algorithms for the seeded clustering and bulk insertion as well as the results from our extensive experimental study. The experimental results show that the bulk insertion by seeded clustering outperforms the previously known methods in terms of insertion cost and the quality of target R-trees measured by their query performance.
지구 관측 시스템(EOSDIS)나 많은 수의 클라이언트를 추적하는 이동전화 서비스 등 많은 응용에서는 지속적으로 생겨나는 대량의 복잡한 데이타들을 보관하고 인덱싱하는 것이 매우 어려운 일이다. 다차원 데이타를 효과적으로 관리하기 위해 R-tree에 기반 한 인덱스 구조가 널리 사용되어 왔다. 본 논문에서는 빠른 데이타 생성 속도를 따라잡으면서 대량 삽입을 통해 R-tree를 관리할 수 있는 seeded clustering이라는 확장성 있는 기법을 제안한다. 이 기법에서는 삽입할 대상 R-tree의 상위 k레벨의 구조를 활용하여 시드 트리를 만들어 삽입 데이타를 분류해 클러스터를 생성한다. 그리고 각 클러스터로부터 삽입 R-tree를 생성하고 이를 대상 R-tree에 한 번에 하나씩 삽입한다. 논문에서는 자세한 알고리즘과 함에 다양한 실험 결과를 보여준다. 실험 결과를 통해 seeded clustering을 이용한 대량 삽입이 기존의 대량 삽입 기법들과 비교해 삽입이나 질의 처리 모두에서 우수함을 알 수 있다.