Memory management during run generation in external sorting
SIGMOD '98 Proceedings of the 1998 ACM SIGMOD international conference on Management of data
Database tuning: principles, experiments, and troubleshooting techniques
Database tuning: principles, experiments, and troubleshooting techniques
Automated Selection of Materialized Views and Indexes in SQL Databases
VLDB '00 Proceedings of the 26th International Conference on Very Large Data Bases
LEO - DB2's LEarning Optimizer
Proceedings of the 27th International Conference on Very Large Data Bases
Proceedings of the 2005 ACM SIGMOD international conference on Management of data
Automatic physical database tuning: a relaxation-based approach
Proceedings of the 2005 ACM SIGMOD international conference on Management of data
Adaptive self-tuning memory in DB2
VLDB '06 Proceedings of the 32nd international conference on Very large data bases
SQL memory management in Oracle9i
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
DB2 design advisor: integrated automatic physical database design
VLDB '04 Proceedings of the Thirtieth international conference on Very large data bases - Volume 30
Automatic SQL tuning in oracle 10g
VLDB '04 Proceedings of the Thirtieth international conference on Very large data bases - Volume 30
Progressive optimization in action
VLDB '04 Proceedings of the Thirtieth international conference on Very large data bases - Volume 30
Efficient use of the query optimizer for automated physical design
VLDB '07 Proceedings of the 33rd international conference on Very large data bases
Bridging the application and DBMS profiling divide for database application developers
VLDB '07 Proceedings of the 33rd international conference on Very large data bases
Robustness in automatic physical database design
EDBT '08 Proceedings of the 11th international conference on Extending database technology: Advances in database technology
A Static Analysis Framework for Database Applications
ICDE '09 Proceedings of the 2009 IEEE International Conference on Data Engineering
Bridging the application and DBMS divide using static analysis and dynamic profiling
Proceedings of the 2009 ACM SIGMOD International Conference on Management of data
Autonomic features of the IBM DB2 universal database for linux, UNIX, and windows
IEEE Transactions on Systems, Man, and Cybernetics, Part C: Applications and Reviews
Automatic partitioning of database applications
Proceedings of the VLDB Endowment
Hi-index | 0.00 |
Excellent work ([1]-[6]) has shown that memory management and transaction concurrency levels can often be tuned automatically by the database management systems. Other excellent work ([7]]-[14]) has shown how to use the optimizer to do automatic physical design or to make the optimizer itself more self-adaptive ([15]-[17]). Our performance tuning experience across various industries (finance, gaming, data warehouses, and travel) has shown that enormous additional tuning benefits (sometimes amounting to orders of magnitude) can come from reengineering application code and table design. The question is: can a tool help in this effort? We believe so. We present a tool called AppSleuth that parses application code and the tracing log for two popular database management systems in order to lead a competent tuner to the hot spots in an application. This paper discusses (i) representative application "delinquent design patterns", (ii) an application code parser to find them, (iii) a log parser to identify the patterns that are critical, and (iv) a display to give a global view of the issue. We present an extended sanitized case study from a real travel application to show the results of the tool at different stages of a tuning engagement, yielding a 300 fold improvement. This is the first tool of its kind that we know of.