Doctoral Dissertations

Keywords and Phrases

Collection queries; Run time; Compile time; Histograms


"Object oriented programming languages raised the level of abstraction by supporting the explicit first class query constructs in the programming codes. These query constructs allow programmers to express operations on collections more abstractly than relying on their realization in loops or through provided libraries. Join optimization techniques from the field of database technology support efficient realizations of such language constructs. However, the problem associated with the existing techniques such as query optimization in Java Query Language (JQL) incurs run time overhead. Besides the programming languages supporting first-class query constructs, the usage of annotations has also increased in the software engineering community recently. Annotations are a common means of providing metadata information to the source code. The object oriented programming languages such as C# provides attributes constraints and Java has its own annotation constructs that allow the developers to include the metadata information in the program codes. This work introduces a series of query optimization approaches to reduce the run time of the programs involving explicit queries over collections. The proposed approaches rely on histograms to estimate the selectivity of the predicates and the joins in order to construct the query plans. The annotations in the source code are also utilized to gather the metadata required for the selectivity estimation of the numerical as well as the string valued predicates and joins in the queries. Several cache heuristics are proposed that effectively cache the results of repeated queries in the program codes. The cached query results are incrementally maintained up-to-date after the update operations to the collections"--Abstract, page iv.


Madria, Sanjay Kumar

Committee Member(s)

Weigert, Thomas
Liu, Xiaoqing Frank
Lin, Dan
Yu, Vincent(Wen-Bin)


Computer Science

Degree Name

Ph. D. in Computer Science


Missouri University of Science and Technology

Publication Date

Summer 2013

Journal article titles appearing in thesis/dissertation

  • Exploring query optimization in programming codes by reducing run time execution.
  • Performance improvement for collection operations using join query optimization.
  • Exploring optimization and caching for efficient collection operations.
  • An approach for optimization of object queries on collections using annotations.
  • Optimization of object queries on collections using annotations for the string valued attributes.
  • Efficient caching and incrementalization of object queries on collections in programming codes.


xviii, 192 pages

Note about bibliography

Includes bibliographical references.


© 2013 Venkata Krishna Suhas Nerella, All rights reserved.

Document Type

Dissertation - Open Access

File Type




Subject Headings

Compilers (Computer programs) -- Software -- Design
Combinatorial optimization
Heuristic algorithms
Object-oriented databases -- Testing
Database management
Metadata harvesting

Thesis Number

T 10367

Electronic OCLC #