Optimizing INFORMIX applications
Robert D. Schneider · 1995
Acknowledgments. 1. About This Book. Intended Audience Benefits of Using This Book. How to Use This Book. How to Use the Examples. Setting Up An Optimization Test Environment. Steps to follow before testing. Steps to follow during testing. Steps to follow after testing. 2. Creating a Well-Designed Database. Introduction. Relational Database Design Concepts. Normalization. When not to normalize Constraints. Indexing Strategies. Introduction. Primary keys. Filter columns. Join columns. Unique versus non-unique. Character versus numeric. Composite index issues. Avoiding highly duplicate indexes. Clustered indexes. Sort columns. Excess indexing. Index fill factor. Index location. Differences in Database Design between OnLine and SE. Introduction. BLOBs. VARCHAR. Rowid. Understanding the Informix Optimizer. Introduction. What is an optimizer? Optimizer features and algorithms. Optimizer diagnostics. Update statistics. Programming considerations. 3. Optimizing Application Code. Introduction. SQL Tips. Numeric versus non-numeric joins and filters. Substring searches. Temporary tables. Subqueries. Cost of views. Using math inside SQL Unions. Sorting General Tips. Transactions. Error checking. Cursors. Reducing traffic between client process and server process. Concurrency. Miscellaneous tips. SQL Specific Tips. General language tips. Forms tips. Report writer tips. ESQL/C Specific Tips. Memory management. Informix string-handling functions. Dynamic SQL. Dynamic SQL without system descriptor area or SQLDA. Process control. Compilation hints. Stored procedures, triggers, and cascading deletes. Stored procedures. Client/Server Security. Triggers. Cascading deletes. Distributed system considerations. Assessing your network's capabilities. Minimizing network traffic. Tuning your network. 4. The Informix Engines. Introduction. Standard Engine. Specific Tips. Defragmenting database files. Transaction log. Moving tables to other devices. When to move to OnLine. Online Specific Tips. Conventions. Disk configuration. Shared memory configuration. Virtual processor configuration. Logging. Key-only reads. Setting SQL turbo priority. Parallel archiving and restoring. Advanced user monitoring. Data fragmentation and PDQ. Introduction. Fragmentation. How is fragmentation implemented? PDQ. 5. Case Studies. Introduction. Case study 1. Case study 2. Case study 3. Case study 4. Case study 5. Index.