O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Expert Oracle Database Architecture: 9i and 10g Programming Techniques and Solutions

Book Description

This is a defining book on the Oracle database for any developer or database administrator who works with Oracle-driven database applications. Tom Kyte has a simple philosophy: you can treat Oracle as a black box and just stick data into it or you can understand how it works and exploit it as a powerful computing environment. If you choose the latter, then you will find that there are few information management problems that you cannot solve quickly and elegantly.

Expert Oracle Database Architecture is the first of a three-book series that completely explores and defines the Oracle database. It covers all of the most important Oracle architecture features, including:

  • Files, memory structures and processes

  • Locking and latching

  • Transactions, concurrency and multi-versioning

  • Tables and Indexes

  • Datatypes

  • Partitioning and parallelism

Each feature is taught in a proof-by-example manner, not only discussing what it is, but also how it works, how to implement software using it, and the common pitfalls associated with it.

This fully revised edition covers both the 9i and 10g versions. It also comes with a CD containing a searchable PDF of the 8i version of the book.M

Tom has fully revised and expanded the architecture-related sections from Expert One-on-One Oracle (a searchable PDF of which is included on the CD accompanying this book), and added substantial new material. He focuses solely on 9i and 10g architecture in this book and refers to the CD for 8i-specific details. The number of changes will surprise you.

In summary, this book provides a one-stop resource containing deep wisdom on the design, development and administration of Oracle applications, written by one of the world's foremost Oracle experts, Thomas Kyte.

Table of Contents

  1. Title Page
  2. Contents
  3. Foreword
  4. About the Author
  5. About the Technical Reviewers
  6. Acknowledgments
  7. Introduction
    1. What This Book Is About
    2. Who Should Read This Book
    3. How This Book Is Structured
    4. Source Code and Updates
    5. Errata
  8. Setting Up Your Environment
    1. Setting Up the SCOTT/TIGER Schema
    2. The Environment
    3. Setting Up AUTOTRACE in SQL*Plus
    4. Setting Up Statspack
    5. Custom Scripts
    6. Coding Conventions
  9. CHAPTER 1 Developing Successful Oracle Applications
    1. My Approach
    2. The Black Box Approach
    3. How (and How Not) to Develop Database Applications
    4. Summary
  10. CHAPTER 2 Architecture Overview
    1. Defining Database and Instance
    2. The SGA and Background Processes
    3. Connecting to Oracle
    4. Summary
  11. CHAPTER 3 Files
    1. Parameter Files
    2. Trace Files
    3. Alert File
    4. Data Files
    5. Temp Files
    6. Control Files
    7. Redo Log Files
    8. Password Files
    9. Change Tracking File
    10. Flashback Log Files
    11. DMP Files (EXP/IMP Files)
    12. Data Pump Files
    13. Flat Files
    14. Summary
  12. CHAPTER 4 Memory Structures
    1. The Process Global Area and User Global Area
    2. The System Global Area
    3. Summary
  13. CHAPTER 5 Oracle Processes
    1. Server Processes
    2. Background Processes
    3. Slave Processes
    4. Summary
  14. CHAPTER 6 Locking and Latching
    1. What Are Locks?
    2. Locking Issues
    3. Lock Types
    4. Summary
  15. CHAPTER 7 Concurrency and Multi-Versioning
    1. What Are Concurrency Controls?
    2. Transaction Isolation Levels
    3. Implications of Multi-Version Read Consistency
    4. Write Consistency
    5. Summary
  16. CHAPTER 8 Transactions
    1. Transaction Control Statements
    2. Atomicity
    3. Integrity Constraints and Transactions
    4. Bad Transaction Habits
    5. Distributed Transactions
    6. Autonomous Transactions
    7. Summary
  17. CHAPTER 9 Redo and Undo
    1. What Is Redo?
    2. What Is Undo?
    3. How Redo and Undo Work Together
    4. Commit and Rollback Processing
    5. Investigating Redo
    6. Investigating Undo
    7. Summary
  18. CHAPTER 10 Database Tables
    1. Types of Tables
    2. Terminology
    3. Heap Organized Tables
    4. Index Organized Tables
    5. Index Clustered Tables
    6. Hash Clustered Tables
    7. Sorted Hash Clustered Tables
    8. Nested Tables
    9. Temporary Tables
    10. Object Tables
    11. Summary
  19. CHAPTER 11 Indexes
    1. An Overview of Oracle Indexes
    2. B*Tree Indexes
    3. Bitmap Indexes
    4. Function-Based Indexes
    5. Application Domain Indexes
    6. Frequently Asked Questions and Myths About Indexes
    7. Summary
  20. CHAPTER 12 Datatypes
    1. An Overview of Oracle Datatypes
    2. Character and Binary String Types
    3. Binary Strings: RAW Types
    4. Number Types
    5. LONG Types
    7. LOB Types
    8. ROWID/UROWID Types
    9. Summary
  21. CHAPTER 13 Partitioning
    1. Partitioning Overview
    2. Table Partitioning Schemes
    3. Partitioning Indexes
    4. Partitioning and Performance, Revisited
    5. Auditing and Segment Space Compression
    6. Summary
  22. CHAPTER 14 Parallel Execution
    1. When to Use Parallel Execution
    2. Parallel Query
    3. Parallel DML
    4. Parallel DDL
    5. Parallel Recovery
    6. Procedural Parallelism
    7. Summary
  23. CHAPTER 15 Data Loading and Unloading
    1. SQL*Loader
    2. External Tables
    3. Flat File Unload
    4. Data Pump Unload
    5. Summary
  24. INDEX