Title :
Exploring caching for efficient collection operations
Author :
Surapaneni, Swetha ; Nerella, Venkata Krishna Suhas ; Madria, Sanjay K. ; Weigert, Thomas
Author_Institution :
Dept. of Comput. Sci., Missouri Univ. of Sci. & Technol., Rolla, MO, USA
Abstract :
Many useful programs operate on collection types. Extensive libraries are available in many programming languages, such as the C++ Standard Template Library, which make programming with collections convenient. Extending programming languages to provide collection queries as first class constructs in the language would not only allow programmers to write queries explicitly in their programs but it would also allow compilers to leverage the wealth of experience available from the database domain to optimize such queries. This paper describes an approach to reducing the run time of programs involving explicit collection queries by leveraging a cache to store previously computed results. We propose caching the results of join (sub)queries which allows queries that miss the cache entirely to be answered partially from the cache thereby improving the query execution time. We also describe an effective cache policy to determine which join (sub)queries to cache. The cache is maintained incrementally, when the underlying collections change, and use of the cache space is optimized by a cache replacement policy.
Keywords :
C++ language; cache storage; program compilers; query processing; C++ standard template library; cache space; efficient collection operations; exploring caching; extending programming languages; program compilers; programming languages; query collection; Conferences; Frequency estimation; Histograms; Maintenance engineering; Programming; Query processing; Cache Policy; Join caching; Run-time; Selectivity;
Conference_Titel :
Automated Software Engineering (ASE), 2011 26th IEEE/ACM International Conference on
Conference_Location :
Lawrence, KS
Print_ISBN :
978-1-4577-1638-6
DOI :
10.1109/ASE.2011.6100101