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

The Berkeley DB Book

Book Description

The Berkeley DB Book is a practical guide to the intricacies of the Berkeley DB. This book covers in-depth the complex design issues that are mostly only touched on in terse footnotes within the dense Berkeley DB reference manual. It explains the technology at a higher level and also covers the internals, providing generous code and design examples.

In this book, you will get to see a developer's perspective on intriguing design issues in Berkeley DB-based applications, and you will be able to choose design options for specific conditions. Also included is a special look at fault tolerance and high-availability frameworks. Berkeley DB is becoming the database of choice for large-scale applications like search engines and high-traffic web sites.

Table of Contents

  1. Title Page
  2. Contents at a Glance
  3. Contents
  4. About the Author
  5. About the Technical Reviewer
  6. Acknowledgments
  7. Introduction
  8. CHAPTER 1: Introduction to Berkeley DB
    1. A Brief History
    2. What Is Berkeley DB?
    3. Architecture of Berkeley DB
    4. Berkeley DB vs. RDBMS
    5. Why Berkeley DB Isn't As Popular As RDBMS
    6. Oracle Dual License
    7. Summary
  9. CHAPTER 2: When to Use Berkeley DB
    1. What Berkeley DB Does and Doesn't Provide
    2. Why Berkeley DB Doesn't Provide Everything
    3. What Type of Data Store Do You Want?
    4. A Checklist of Components to Be Built
    5. Plan for the Future
    6. Berkeley DB Licensing
    7. Summary
  10. CHAPTER 3: Products, Compilation, and Installation
    1. Berkeley DB Product Family
    2. Compiling and Installing
    3. Berkeley DB Versioning
    4. Summary
  11. CHAPTER 4: Building a Simple Application Using Berkeley DB
    1. Storing "Hello World"
    2. Access Methods in Berkeley DB
    3. Berkeley DB Environment
    4. Summary
  12. CHAPTER 5: Introduction to Advanced Data Stores
    1. Database Locking
    2. Concurrent Data Store
    3. Database Watchdog
    4. An Introduction to TDS
    5. Deadlocks
    6. Nested Transactions
    7. Database Recoverability
    8. Summary
  13. CHAPTER 6: Advanced Operations
    1. Enhancing the Data Store
    2. Endian Issues
    3. Alignment Issues
    4. Secondary Indices
    5. Database Operations
    6. Cursors
    7. Equality Joins
    8. Bulk Retrieval
    9. Summary
  14. CHAPTER 7: A Real-World Data Store
    1. Constraints on Environment Usage
    2. A Single Process With One Thread
    3. A Single Process With Multiple Threads
    4. Multiple Processes
    5. Database Configuration
    6. Summary
  15. CHAPTER 8: Replication
    1. What Is Database Replication?
    2. Berkeley DB Replication Architecture
    3. Building the Replication Framework Using the Base API
    4. Network Partitions
    5. Transactional Guarantees
    6. Replication Manager Interface
    7. Summary
  16. CHAPTER 9: Distributed Transactions and Data-Distribution Strategies
    1. Distributed Transactions
    2. Building a Global Transaction Manager
    3. Data-Distribution Strategies
    4. Summary
  17. CHAPTER 10: Berkeley DB Utilities
    1. Introduction to the Utilities
    2. db_stat
    3. db_recover
    4. db_dump
    5. db_load
    6. db_checkpoint
    7. db_deadlock
    8. db_printlog
    9. db_archive
    10. db_hotbackup
    11. db_verify
    12. Summary
  18. CHAPTER 11: Berkeley DB Java APIs
    1. Understanding the Two APIs
    2. Compiling and Using the Java API
    3. Opening the Environment
    4. Opening the Database
    5. Creating Database Records
    6. Binding Data Types in the Java API
    7. Binding Data Types in the Collections API
    8. Transactions
    9. Complete Code Example
    10. Summary
  19. CHAPTER 12: Berkeley DB C API
    1. Compiling and Installing the C API
    2. Basic Operations Using the C API
    3. Error Returns
    4. Complete Code Example
    5. Summary
  20. Index