Performance Evaluation and Improvement of Object Database Applications
Eric Hughes · 1997
Object database management systems (ODBMSs) are gaining acceptance in complex data management and middleware solutions. In these environments it is very difficult to understand the performance problems of the application, and prior database performance work does not apply to these environments directly. This thesis presents several approaches to performance modeling and optimization for ODBMS application environments. We present an application model to represent the database aspects of a typical execution of an ODBMS application and the locality of reference which it exhibits. Then we develop a performance model that can express the relevant aspects of the application in terms that are meaningful to the application writer. The performance model includes descriptions of the ODBMS cache states and object allocation policy. The combination of these models can be used to estimate the performance of ODBMS applications, without expensive computation based on the sequence of object references of the application. We augment the performance model with PEDCAD, a toolset that supports the comparison of alternative implementations of the application. PEDCAD can be used to validate performance estimates or to experiment with the use of features supported by the ODBMS. PEDCAD also provides a convenient vehicle for building tools which suggest possible uses of ODBMS features based on the application model. We describe the index suggester as an example of such a tool which uses a simplified version of the performance model. These tools can be used to discover new ways to improve the performance of ODBMS applications. We apply the described approaches to typical ODBMS applications with promising results.