An Efficient Incremental Maintenance Method for Data Cubes in Data Warehouses

데이타 웨어하우스에서 데이타 큐브를 위한 효율적인 점진적 관리 기법

  • 이기용 (한국과학기술원 전산학) ;
  • 박창섭 (수원대학교 인터넷정보공학과) ;
  • 김명호 (한국과학기술원 전산학)
  • Published : 2006.04.01

Abstract

The data cube is an aggregation operator that computes group-bys for all possible combination of dimension attributes. %on the number of the dimension attributes is n, a data cube computes $2^n$ group-bys. Each group-by in a data cube is called a cuboid. Data cubes are often precomputed and stored as materialized views in data warehouses. These data cubes need to be updated when source relation change. The incremental maintenance of a data cube is to compute and propagate only its changes. To compute the change of a data cube of $2^n$ cuboids, previous works compute a delta cube that has the same number of cuboids as the original data cube. Thus, as the number of dimension attributes increases, the cost of computing a delta cube increases significantly. Each cuboid in a delta cube is called a delta cuboid. In this paper. we propose an incremental cube maintenance method that can maintain a data cube by using only $_nC_{{\lceil}n/2{\rceil}}$ delta cuboids. As a result, the cost of computing a delta cube is substantially reduced. Through various experiments, we show the performance advantages of our method over previous methods.

데이타 큐브는 차원 애트리뷰트의 모든 가능한 조합에 대해 데이타를 집단화하는 연산자이다. 차원 애트리뷰트의 수가 n일 때, 데이타 큐브는 $2^n$개의 group-by를 계산한다. 데이타 큐브에 포함된 각각의 group-by를 큐보이드(cuboid)라 부른다. 데이타 큐브는 흔히 미리 계산되어 형태 뷰(materialized view)의 형태로 데이타 웨어하우스에 저장된다. 이러한 데이타 큐브는 소스 릴레이션이 변경되면 이를 반영하기 위해 갱신되어야 한다. 데이타 큐브의 점진적 관리는 데이타 큐브의 변경될 내용만을 계산하여 이를 데이타 큐브에 반영하는 방법을 의미한다. $2^n$개의 큐보이드로 이루어진 큐브의 변경될 내용을 계산하기 위하여, 기존의 방법들은 데이타 큐브와 동일한 개수의 큐보이드를 가지는 변경 큐브를 계산한다. 따라서, 차원 애트리뷰트의 수가 증가할수록 변경 큐브를 계산하는 비용이 매우 커지게 된다. 변경 큐브에 포함된 각 큐보이드들을 변경 큐보이드(delta cuboid)라 부른다. 본 논문에서는 $2^n$개의 변경 큐보이드 대신 $_nC_{{\lceil}n/2{\rceil}}$개의 변경 큐보이드만을 사용하여 데이타 큐브를 갱신하는 방법을 제안한다. 이에 따라 제안하는 방법은 변경 큐브를 계산하는 비용을 크게 줄일 수 있다. 성능 평가 결과는 제안하는 방법이 기존의 방법에 비해 더 좋은 성능을 가지고 있음을 보여준다.

Keywords

References

  1. I. S. Mumick, D. Quass, B. S. Mumick, Maintenance of Data Cubes and Summary Tables in a Warehouse, In Proceedings of the ACM SIGMOD Conference, 1997 https://doi.org/10.1145/253260.253277
  2. Nick Roussopoulos, Yannis Kotidis, Mema Roussopoulos, Cubetree: Organization of and Bulk Incremental Updates on the Data Cube, In Proceedings of the ACM SIGMOD Conference, 1997 https://doi.org/10.1145/253260.253276
  3. C. A. Hurtado, A. O. Mendelzon, A. A. Vaisman, Maintaining Data Cubes under Dimension Updates, In Proceedings of ICDE, 1999
  4. W. Lehner, R. Sidle, H. Pirahesh, R. Cochrane, Maintenance of Cube Automatic Summary Tables, In Proceedings of the ACM SIGMOD Conference, 2000 https://doi.org/10.1145/342009.335454
  5. A. Gupta, I. S. Mumick, V. S. Subrahmanian, Maintaining views incrementally, In Proceedings of the ACM SIGMOD Conference, pp. 157-166, 1993 https://doi.org/10.1145/170035.170066
  6. D. Quass, Maintenance expressions for views with aggregation, In Workshop on Materialized Views: Techniques and Applications, pp. 110-118, 1996
  7. H. Gupta, I.S. Mumick, Incremental maintenance of aggregate and outerjoin expressions, Technical Report, Stanford University, 1999
  8. Jim Gray, Adam Bosworth, Andrew Layman, Hamid Pirahesh, Data Cube: A Relational Aggregation Operator Generalizing Group-By, Cross-Tab, and Sub-Totals, In Proceedings of the 12th International Conference on Data Engineering, 1996 https://doi.org/10.1109/ICDE.1996.492099
  9. V. Harinarayan, A. Rajaraman, J. D. Ullman, Implementing Data Cubes Efficiently, In Proceedings of the ACM SIGMOD Conference, 1996 https://doi.org/10.1145/233269.233333
  10. S. Agarwal, R. Agrawal, P. M. Deshpande, A. Gupta, J. F. Naughton, R. Ramakrishnan, S. Sarawagi, On the Computation of Multidimensional Aggregates, In Proceedings of VLDB Conference, 1996
  11. K. A. Ross, D. Srivastava, Fast Computation of Sparse Datacubes, In Proceedings of VLDB Conference, 1997
  12. Kevin Beyer, Raghu Ramakrishnan, Bottom-Up Computation of Sparse and Iceberg CUBEs, In Proceedings of the ACM SIGMOD Conference, 1999 https://doi.org/10.1145/304182.304214
  13. Ying Feng, Divyakant Agrawal, Amr El Abbadi, Ahmed Metwally, Range CUBE: Efficient Cube Computation by Exploiting Data Correlation, In Proceedings of the International Conference on Data Engineering, 2004 https://doi.org/10.1109/ICDE.2004.1320035
  14. Yannis Kotidis, Aggregate View Management in Data Warehouses, Handbook of Massive Data Sets, pp. 711-741, 2002
  15. Goetz Graefe, Query Evaluation Techniques for Large Databases, ACM Computing Surveys, Vol. 25, Issue 2, pp. 73-169, 1993 https://doi.org/10.1145/152610.152611
  16. Surajit Chaudhuri, Kyuseok Shim. Including Group-By in Query Optimization. In Proceedings of the Twentieth International Conference on Very Large Databases, pp. 354-366, 1994
  17. Zhimin Chen, Vivek Narasayya, 'Efficient Computation of Multiple Group By Queries,' In Proceedings of the ACM SIGMOD Conference, 2005 https://doi.org/10.1145/1066157.1066188
  18. M. R. Garey, D. S. Johnson, Computers and Intractability, chapter Appendix, pp. 208-209
  19. L. R. Foulds, R. L. Graham, The Steiner Problem in Phylogeny is NP-Complete, Advances in Applied Mathematics, vol. 3, pp. 43-49, 1982 https://doi.org/10.1016/S0196-8858(82)80004-3
  20. C. H. Papadimitriou, K. Steiglitz, Combinatorial Optimization: Algorithms and Complexity, chapter 11, pp. 247-254, 1982
  21. TPC Committee, Transaction Processing Council, http://www.tpc.org/