Abstract
Object oriented programming languages raised the level of abstraction by incorporating first class query constructs explicitly into program codes. These query constructs allow programmers to express operations over collections as object queries. They also provide optimal query execution, utilizing query optimization strategies from the database domain. However, when a query is repeated in the program, it is executed as a new query. Existing approaches, however, such as Java Query Language (JQL), which caches such query constructs on collections have high run time overhead. Therefore, this paper presents an approach to reduce the run time execution of programs involving explicit queries by caching the results of repeated queries while incrementally maintaining the cached results. We performed the pattern matching of both queries and updates at compile time. We propose several cache heuristics that determine not only which queries to cache but also when to stop the incremental maintenance of cached query results. We also propose a method for the incremental maintenance of cached results of queries by handling different types of update operations such as addition, removal of objects from the collections and field value modifications of the object states. We incorporated cache replacement policies that replace the queries from the cache when the cache size is full. Our experimental results demonstrate that our approaches of caching and incrementalization have reduced execution times for the programs with object queries on collections when compared with earlier approaches such as JQL.
Recommended Citation
V. K. Nerella et al., "Efficient Caching and Incrementalization of Object Queries on Collections in Programming Codes," Proceedings - International Computer Software and Applications Conference, pp. 229 - 238, article no. 6899221, Institute of Electrical and Electronics Engineers, Sep 2014.
The definitive version is available at https://doi.org/10.1109/COMPSAC.2014.31
Department(s)
Computer Science
Keywords and Phrases
Cache Policies; Collection Operations; Query Optimization; Run time
International Standard Serial Number (ISSN)
0730-3157
Document Type
Article - Conference proceedings
Document Version
Citation
File Type
text
Language(s)
English
Rights
© 2024 Institute of Electrical and Electronics Engineers, All rights reserved.
Publication Date
15 Sep 2014