Practical Oracle8i¿: Building Efficient Databases

Preface. Why Another Book? Who Is It For? Which Version of Oracle? What's in This Book? What's Not in This Book? The Framework of the Book. Conventions Used in the Book. Acknowledgments. A Cautionary Tale. I. OVERVIEW. 1. What Is Oracle? Data, Undo, and Redo. Data Change. Uncommitted Data. Committed Data. Side Effects of Rollback. Locating the Data. Conclusion. 2. Why Do Projects Fail? Ignoring the Technology. Avoiding the Arithmetic. Fudging the Prototype. Confusing the Responsibilities. Sharing the Database. Conclusion. 3. How the Engine Works. The I/O Trap. Reading Data. Changing Data. Side Effects. Conclusion. 4. Classifying Your Target. Manual Transaction Processing. Automatic Transaction Processing. High Batch Throughput. Data Warehouse. The Internet Changes Everything. Conclusion. II. DATA STORAGE. 5. Making the Most of Tables. Rebuilding the Data. Packing the Data. More Packing. Dropping Columns. Strategy. Strategy. Up-to-Date Statistics (Nearly). Wide Tables. Problems and Quirks. Strategy Notes. 6. Basic Indexing. B-Tree Indexing. Updates to the Index. Low-Level Processing. Using the Index. Bitmap Indexing. Administration. Problems and Quirks. Strategy Notes. 7. Enhanced Indexing. Compressed B-Trees. Minimize Records per Block. Descending Indexes. Reverse Key Indexes. Function-Based Indexes. Built-in Functions. User-Defined Functions. Administration. Rebuild. Coalesce. Statistics. Rename. Optimization. Index Joins. Star Transformations. Problems and Quirks. Strategy Notes. 8. Leveraging Tablespaces. Tablespace Strategies. Rollback Tablespaces. Temporary Tablespaces. Classification. Locally Managed Tablespaces. General Tablespace Management. Transportable Tablespaces. Tablespace Point-in-Time Recovery. Problems and Quirks. Strategy Notes. 9. Temporary Space. Temporary Tablespaces. So What's New in 8.1? Temporary Files. Temporary Tables. Temporary LOBs. Problems and Quirks. Strategy Notes. 10. Files, Raw, and RAID. Files or Raw. The Management Issues. The Performance Issue. Archiving. Conclusion. RAID Levels. RAID0. RAID. RAID 0/1 and RAID 1/0. RAID. Generic RAID. Disk Cache. Problems and Quirks. Strategy Notes. 11. Views. Basics of Views. Views for Performance. In-Line Views. SORT_AREA_SIZE. Rollover Views. Views for Security. Views for Functionality. Views for Clarity. Functions Returning Datasets. Partition Access. Analytical Functions and Others. Updatable Join Views. Simple Join Views. In-Line Updatable Views. Object Views. A Farewell to Partitioned Views. Problems and Quirks. Strategy Notes. 12. Introducing Partitioning. Partitioning Options. How Does Range Partitioning Work? How Does Hash Partitioning Work? How Does Composite Partitioning Work? Partitioning - General Points. Multicolumn Partitioning. Problems and Quirks. Strategy Notes. 13. Using Partitioning. Administration. Dropping Partitions. Tablespace Management. Packing Tablespaces. Data Loading. Indexing Existing Tables. Performance. Range Partitions with Dates. Hash Partitions and Composite Partitions. Partition-wise Joins. EXPLAINPLAN. Statistics. Partitions and Parallel Execution. Problems and Quirks. Strategy Notes. 14. Index-Organized Tables. Basic IOTs. Indexes on IOTs. On-Line Moves. Advanced IOTs. LOBs, Varrays, and Nested Tables. Partitioning. Restrictions on IOT Partitions. Problems and Quirks. Strategy Notes. 15. Simple Objects. Getting Started with Objects. Objects and Relational Tables. Object Tables. Problems and Quirks. Strategy Notes. 16. Collection Objects. Varrays. Tables. Transient Collections. A Cautionary Tale. Problems and Quirks. Strategy Notes. 17. Handling Large Objects. Internal or External? Why LOBs? Working with LOBs. Working with BFILEs. The LOB Package - DBMS_LOB. BFILEs. Permanent LOBs. Temporary LOBs. Generic LOBs. Problems and Quirks. Strategy Notes. 18. Data Integrity. Types of Constraints. Primary Key. Unique Key. Foreign Key. Check. View. Scope. Partition Boundaries. Using Constraints. Adding Constraints. Truncating Tables. Loading Data. Cascading Changes to Primary Key. Data Warehouses and Constraints. Triggers. Audit Trail. Problems and Quirks. Strategy Notes. III. DATA MANIPULATION. 19. PL/SQL. What Is PL/SQL? The Best Bits. Native Dynamic SQL. Array Processing. Passing Result Sets into and out of Procedures. Invoker Rights. Supplied Packages. Problems and Quirks. Strategy Notes. 20. Autonomous Transactions. Simple Autonomous Transactions. Autonomous Triggers. Sequence Numbers. Who Is Locking My Row? A Counter Example. Problems and Quirks. Strategy Notes. 21. Row-level Security. Historic Implementations. Security Policies. Refining Row-level Security. Problems and Quirks. Strategy Notes. 22. Parallel Query and Parallel Server. Parallel Server. The IDLM. PCM and Non-PCM. PCM Locks and Data Locks. Defining PCM Locks. Avoiding Pinging. Parallel Execution. Problems and Quirks. Parallel Server. Parallel Query. Strategy Notes. Parallel Server. Parallel Query. 23. Number Crunching. Cube and Rollup. Programming Solutions. Expensive SQL. Temporary Tables. Enhancements in Version 8.1.5. Rollup. Cube. Analytic Functions. Miscellaneous. Case Statements. SAMPLE Clause. Materialized Views. Implementation. Problems and Quirks. Strategy Notes. 24. Fallback. Choose Your Disaster. Pick a Time Scale. The 30-Second 100% Fail-over. The Five-Minute 100% Fail-over. Off-site 100% Fail-Over. Clones at 99%. Backups. The Standby Database. Recovery Manager. Problems and Quirks. Strategy Notes. Appendix A: Feature Reference. Standby Database. Row-level Security. Tablespace Management. Transportable Tablespaces. Temporary Tablespaces. Temporary Tables. PL/SQL. Database Triggers. Partitioning. Autonomous Transactions. Three-tier Applications. Indexes. LOBs. Analytic Functions (Version 8.1.6). LogMiner. Replication. Query Rewrite. IOTs. Integrity Constraints. Parallel Execution. JServer. Appendix B: Tuning to 90%. V$SQL - Recent SQL with Costs. V$FILESTAT/V$TEMPSTAT. V$SYSTEM_EVENT/V$SESSION_EVENT. The X$ Files. X$KCBFWAIT. X$KSQST. Helping the Developers. Conclusion. Appendix C: Testing to Destruction. The Basis of Testing. A Cautionary Tale. Generating Data. Validating the Results. Execution Paths. Events. Database Dumps. Conclusion. Appendix D: Space Management. The Block. INITRANS and MAXTRANS. PCTFREE and PCTUSED. Choosing a Block Size. The Extent. The Segment. The Tablespace. The Disk Array. Conclusion. About the Author. Index. 0201715848T04062001.