XML 질의 캐쉬의 저장 기법

Storage Schemes for XML Query Cache

  • 발행 : 2006.10.15

초록

최근 XML 데이타베이스 기반 웹 응용을 위한 XML 질의 캐쉬 기법이 활발히 연구되고 있다. 이와 같은 XML 질의 캐쉬의 실용적인 중요성에도 불구하고, 캐쉬된 질의 결과를 어떻게 저장하는 것이 효율적인지에 대해서는 아직 아무런 연구가 없는 실정이다. 본 논문에서는 XML 질의 캐쉬의 저장 기법을 다룬다. XML 질의 캐쉬의 효율적인 저장 구조 설계에 있어 근본적으로 고려해야 하는 점은 캐쉬된 질의 결과에 대한 대표적인 두 종류 연산 간에 성능 트레이드오프가 존재한다는 것이다. 이 두 종류의 연산은 (1) 캐쉬된 질의 결과를 반환하기 위하여 캐쉬 전체를 검색하는 것과 (2) 소스 데이타의 변경에 대하여 캐쉬를 점진적으로 갱신하기 위하여 캐쉬의 일부분을 변경하는 것이다. 본 논문에서는 모두 여덟 개의 XML 질의 캐쉬 저장 기법을 제시한다. 이들은 크게 세 개의 그룹으로 나누어지는데, (1) 일반적인 텍스트 화일을 기반으로 한 기법 (2) 영속성 있는 DOM(PDOM) 화일에 기반을 둔 기법 (3) RDBMS를 사용하는 기법이다. 이들 모두를 구현하여 성능을 비교하였고, 기존의 XML 저장 기술에 기반을 둔 질의 캐쉬 저장 기법과도 비교 평가하였다.

XML query caching for XML database-backed Web applications began to be investigated recently. Despite its practical significance, efficiency of the storage schemes for cached query results has not been addressed. In this paper, we deal with the storage schemes for XML query cache. A fundamental problem that needs to be considered in designing an efficient storage structure for XML query cache is that there exist performance tradeoffs between the two major types of operations on a cached query result. The two are (1) retrieving the whole of it to return the query result and (2) updating just a small portion of it for its incremental refresh against the updates done to its source. We propose eight different storage schemes for XML query cache, which are categorized into three groups: (1) the schemes based on the plain text file, (2) the schemes based on the persistent DOM (PDOM) file, and (3) a scheme employing an RDBMS. We implemented all of them, and compared their performance with each other. We also compared our proposal with a storage scheme based on a current state-of-the-art XML storage scheme, showing that ours is more efficient.

키워드

참고문헌

  1. A. Gupta and I. Mumick, 'Materialized Views: Techniques, Implementations, and Applications,' 1999, MIT Press
  2. A. Levy et al., 'Answering Queries Using Views,' Proc. of ACM Int'l Symp. on PODS, 1995
  3. L. Chen and E. Rundensteiner, 'Aggregate Path Index for Incremental Web View Maintenance,' Proc. 2nd Int'l Workshop on Advanced Issues of E-Commerce and Web-based Information Systems, 2000 https://doi.org/10.1109/WECWIS.2000.853880
  4. L. Quan et al., 'Argos: Efficient Refresh in an XQL-Based Web Caching System,' Proc. Workshop on the Web and Databases, 2000, pp. 23-28
  5. K. Dimitrova, M. El-Sayed, E. Rundensteiner, 'Order-sensitive View Maintenance of Materialized XQuery Views,' Tech. Rep. WPI-CS-TR03-17, Computer Science Department, Worcester Polytechnic Institute, May 2003
  6. A. Sawires, J. Tatemura, O. Po, D. Agrawal, and K. Candan, 'Incremental Maintenance of Path-Expression Views,' Proc. ACM SIGMOD Int'l Conf. on Management of Data, 2005 https://doi.org/10.1145/1066157.1066208
  7. L. Chen and E. Rundensteiner, 'ACE- XQ: A CachE-aware XQuery Answering System,' Proc. Workshop on the Web and Databases, 2002
  8. V. Hristidis and M. Petropoulos, 'Semantic Caching of XML Databases,' Proc. Workshop on the Web and Databases, 2002
  9. P. Marron and G. Lausen, 'Efficient Cache Answerability for XPath Queries,' Proc. the 2nd Int'l Workshop on Data Interation over the Web (DIWeb), 2002, pp. 35-45
  10. L. Yang, M. Lee, and W. Hsu, 'Efficient Mining of XML Query Patterns for Caching,' Proc. Int'l Conf. on VLDB, 2003
  11. A. Balmin, F. Ozcan, K. Beyer, R. Cochrane, and H. Pirahesh, 'A Framework for Using Materialized XPath Views in XML Query Processing,' Proc. Int'l Conf, on VLDB, 2004
  12. W. Xu and Z. Ozsoyoglu, 'Rewriting XPath Queries Using Materialized Views,' Proc. Int'l Conf. on VLDB, 2005
  13. B. Mandhani and D. Suciu, 'Query Caching and View Selection for XML Databases,' Proc. Int'l Cont. on VLDB, 2005
  14. G. Huck, I. Macherius, and P. Fankhauser, 'PDOM: Lightweight Persistency Support for the Document Object Scheme,' Proc. OOPSLA Workshop Java and Databases: Persistence Options, 1999
  15. Schmidt, A. et al., 'XMark: A Benchmark for XML Data Management,' Proc, Int'l Conf, on VLDB, 2002
  16. XBench: http://db.uwaterloo.ca/~ddbms/projects/xbench/
  17. M. Yoshikawa, T. Amagasa, T. Shimura, S. Uemura, 'XRel: A Path-Based Approach to Storage and Retrieval of XML Documents Using Relational Databases,' ACM Trans. on Internet Technology, Vol. 1, No. 1, Aug. 2001, pp. 110-141 https://doi.org/10.1145/383034.383038
  18. J. Kohl et aI., 'HighLight; Using a Log-structured File System for Tertiary Storage Management,' Proc. Winter USENIX, 1993, pp. 435-447
  19. G. Huck, and I. Macherius, 'GMD-IPSI XQL Engine,' http://xml.darmstadt.gmd.de/xql/
  20. J. Shanmugasundaram et al., 'Efficiently Publishing Relational Data as XML Documents,' Proc. Int'l Conf. on VLDB, 2000, pp. 65-76
  21. Xerces Java Parser: http://xml.apache.org/xerces-j/
  22. TPC-W: Transaction Processing Performance Council. http://www.tpc.org/tpcw/
  23. ToXgene: http://www.cs.toronto.edu/tox/toxgene/
  24. D. Florescu and D. Kossmann, 'Storing and Querying XML Data Using an RDBMS,' IEEE Data Engg. Bulletin, Sep. 1999, pp. 27-34