An Efficient Technique for Processing Frequent Updates in the R-tree

R-트리에서 빈번한 변경 질의 처리를 위한 효율적인 기법

  • 권동섭 (서울대학교 전기ㆍ컴퓨터공학부) ;
  • 이상준 (자동제어특화연구센터 연구) ;
  • 이석호 (서울대학교 전기ㆍ컴퓨터공학부)
  • Published : 2004.06.01

Abstract

Advances in information and communication technologies have been creating new classes of applications in the area of databases. For example, in moving object databases, which track positions of a lot of objects, or stream databases, which process data streams from a lot of sensors, data Processed in such database systems are usually changed very rapidly and continuously. However, traditional database systems have a problem in processing these rapidly and continuously changing data because they suppose that a data item stored in the database remains constant until It is explicitly modified. The problem becomes more serious in the R-tree, which is a typical index structure for multidimensional data, because modifying data in the R-tree can generate cascading node splits or merges. To process frequent updates more efficiently, we propose a novel update technique for the R-tree, which we call the leaf-update technique. If a new value of a data item lies within the leaf MBR that the data item belongs, the leaf-update technique changes the leaf node only, not whole of the tree. Using this leaf-update manner and the leaf-access hash table for direct access to leaf nodes, the proposed technique can reduce update cost greatly. In addition, the leaf-update technique can be adopted in diverse variants of the R-tree and various applications that use the R-tree since it is based on the R-tree and it guarantees the correctness of the R-tree. In this paper, we prove the effectiveness of the leaf-update techniques theoretically and present experimental results that show that our technique outperforms traditional one.

정보 통신 기술의 발달은 데이타베이스 분야에도 새로운 응용들을 만들고 있다. 예를 들어, 수많은 객체들의 위치를 추적하는 이동 객체 데이타베이스나 각종 센서들로부터 들어오는 데이타 스트림을 처리하는 스트림 데이타베이스에서 다루는 데이타는 일반적으로 매우 빠르고 끊임없이 변경된다. 하지만, 전통적인 데이타베이스에서는 데이타를 사용자의 명시적인 변경이 있기 전까지는 변하지 않는 상대적으로 정적인 것으로 간주하고 있기 때문에, 전통적인 데이타베이스 시스템은 이러한 끊임없고 동적인 데이터의 변화를 효율적으로 처리하는데 문제를 지닌다. 특히 다차원 데이타 처리를 위한 대표적 인덱스 구조인 R-트리의 경우, 데이타의 삽입이나 삭제가 연속적인 노드의 분할이나 합병을 유발하고 있으므로 이러한 문제는 더 심각해진다. 본 논문에서는 이러한 빈번한 변경 효율적으로 처리하기 위하여 새로운 R-트리 갱신기법인 리프 갱신 기법을 제안한다. 리프 갱신 기법에서는 새로운 데이타가 이전에 속해있던 리프 노드의 MBR 내에 있으면 전체 트리를 변경하지 않고 해당 리프 노드만을 변경시킨다. 이러한 리프 갱신 처리와 리프 노드를 직접 접근하게 해주는 리프 접근 해시 테이블을 이용하여 리프 갱신 기법은 데이타의 변경연산 비용을 크게 줄인다. 제안기법은 기존 R-트리의 알고리즘과 구조를 그대로 이용하고, R-트리의 정확성을 보장하므로 다양한 R-트리 변종들에도 적용 가능하고 R-트리를 이용하는 다양한 응용 환경에 이용이 가능하다. 본 논문에서는 제안 기법이 기존 기법에 대하여 가지는 갱신 연산의 비용 이득을 수학적으로 분석하였고, 실험을 통하여 제안 기법의 우수성을 확인하였다.

Keywords

References

  1. Abraham, T. and Roddick, J. F., 'Survey of Spatio-Temporal Databases,' GeoInformatica, Vol. 3, No. 1, pp. 61-99, 1999 https://doi.org/10.1023/A:1009800916313
  2. Agarwal, P. K., Arge, L. and Erickson, J., 'Indexing Moving Points,' In Proc. of Int'l Symposium on Principles of Database Systems, ACM PODS,pp. 175-186, 2000 https://doi.org/10.1145/335168.335220
  3. Babcock, B., Babu, S., Datar, M., Motwani, R. and Widom, J., 'Models and Issues in Data Stream Systems,' In Proc. of Int'l Symposium on Principles of Database Systems, ACM PODS, pp. 1-16, 2002 https://doi.org/10.1145/543613.543615
  4. Beckmann, N., Kriegel, H., Schneider, R. and Seeger, B., 'The R*-Tree: An Efficient and Robust Access Method for Points and Rectangles,' Proc. of the 1990 ACM SIGMOD Int'l. Conf. on Management of Data, pp. 322-331, 1990 https://doi.org/10.1145/93597.98741
  5. Berchtold, S., Keim, D. A. and Kriegel, H., 'The X-tree: An Index Structure for High-Dimensional Data,' In Proc. of 22th Int'l. Conf. on Very Large Data Bases, pp. 28-39, 1996
  6. Brinkhoff, T., Kriegel, H. and Seeger, B., 'Efficient Processing of Spatial Joins Using R-Trees,' In Proc. of the 1993 ACM SIGMOD Int'l. Conf. on Management of Data, pp. 237-246, 1993 https://doi.org/10.1145/170036.170075
  7. Carney, D., Cetintemel, U., Cherniack, M., Convey, C., Lee, S., Seidman, G., Stonebraker, M., Tatbul, N. and Zdonik, S. B., 'Monitoring Streams - A New Class of Data Management Applications,' In Proc. of 28th Int'l. Conf. on Very Large Data Bases, pp. 215-226, 2002
  8. Forlizzi, L., Guting, R. M., Nardelli, E. and Schneider, M., 'A Data Model and Data Structures for Moving Objects Databases,' Proc. of the 2000 ACM SIGMOD Int'l. Conf. on Management of Data, pp. 319-330, 2000 https://doi.org/10.1145/335191.335426
  9. Gaede, V. and Gunther, O., 'Multidimensional Access Methods,' ACM Computing Surveys, Vol. 30, No. 2, pp. 170-231, 1998 https://doi.org/10.1145/280277.280279
  10. Guttman, A., 'R-Trees: A Dynamic Index Structure for Spatial Searching,' In Proc. of the 1984 ACM SIGMOD Int'l. Conf. on Management of Data, pp. 47-57, 1984 https://doi.org/10.1145/602259.602266
  11. Kamel, I. and Faloutsos, C., 'Hilbert R-Tree: An Improved R-tree: An Improved R-tree using Fractals,' In Proc. of 20th Int'l. Conf. on Very Large Data Bases, pp. 500-509, 1994
  12. Katayama, N. and Satoh, S., 'The SR-tree: An Index Structure for High-Dimensional Nearest Neighbor Queries,' In Proc. of the 1997 ACM SIGMOD Int'l. Conf. on Management of Data, pp. 369-380, 1997 https://doi.org/10.1145/253262.253347
  13. Kollios, G., Gunopulos, D. and Tsotras, V. J., 'On Indexing Mobile Objects,' In Proc. of Int'l Symposium on Principles of Database Systems, ACM PODS, pp. 261-272, 1999 https://doi.org/10.1145/303976.304002
  14. Kwon, D., Lee, S., and Lee, S., 'Indexing the Current Positions of Moving Objects Using the Lazy Update R-tree,' In Proc. of the 3rd Int'l. Conf. on Mobile Data Management, pp.113-120, 2002 https://doi.org/10.1109/MDM.2002.994387
  15. Manolopoulos, Y., Nanopoulos, A., Papadopoulos, A. N. and Theodoridis, Y., 'R-trees Have Grown Everywhere,' Submitted to ACM Computing Surveys, http://www.rtreeportal.org/pubs/MNPT03.pdf, 2003
  16. Pfoser, D., Jensen, C. S. and Theodoridis, Y., 'Novel Approaches in Query Processinf for Moving Object Trajectories,' In Proc. of 26th Int'l. Conf. on Very Large Data Bases, pp. 395-406, 2000
  17. Roussopoulos, N., Kelly, S. and Vincent, F., 'Nearest Neighbor Queries,' In Proc. of the 1995 ACM SIGMOD Int'l. Conf. on Management of Data, pp. 71-79, 1995 https://doi.org/10.1145/223784.223794
  18. Saltenis, S. and Jensen, C. S., 'Indexing of Moving Objects for Location-Based Services,' In Proc. of the 18th Int'l. Conf. on Data Engineering, pp. 463-472, 2002
  19. Saltenis, S., Jensen, C. S., Leutenegger, S. T. and Lopez, M. A., 'Indexing the Positions of Continously Moving Objects,' In Proc. of the 2000 ACM SIGMOD Int'l. Conf. on Management of Data, pp. 331-342, 2000 https://doi.org/10.1145/342009.335427
  20. Sellis, T. K., Roussopoulos, N. and Faloutsos, C., 'The R+-Tree: A Dynamic Index for Multi-Dimensional Objects,' In Proc. of 13th Int'l. Conf. on Very Large Data Bases, pp. 507-518, 1987
  21. Song, Z. and Roussopoulos, N., 'Hashing Moving Objects,' In Proc. of the 2nd Int'l. Conf. on Mobile Data Management, pp. 161-172, 2001
  22. Tao, Y. and Papadias, D., 'MV3R-Tree: a spatio-temporal access method for timestamp and interval queries,' In Proc. of 27th Int'l. Conf. on Very Large Data Bases, pp. 431-440, 2001
  23. Theodoridis, Y., Silva, J. R. O. and Nascimento, M. A., 'On the Generation of Spatiotemporal Datasets,' In Proc. of the 6th Int'l. Symp. on Spatial Databases, pp. 147-164, 1999