You are previewing Data Patterns.
O'Reilly logo
Data Patterns

Book Description

Get expert guidance on using patterns to simplify the design and development of data services in an enterprise business solution and help increase reliability and productivity.

Table of Contents

  1. Data Patterns
  2. Preface
    1. Who Should Read This Book
    2. How This Book Is Organized
    3. Documentation Conventions
    4. Community
    5. Feedback and Support
    6. Acknowledgments
  3. 1. Data Patterns
    1. Patterns Document Simple Mechanisms
      1. Patterns as Problem-Solution Pairs
      2. Patterns at Different Levels
      3. Simple Refinement
    2. Common Vocabulary
      1. Concise Solution Description
    3. Summary
  4. 2. Organizing Patterns
    1. Pattern of Patterns
    2. Pattern Clusters
    3. Different Levels of Abstraction
      1. Architecture Patterns
      2. Design Patterns
      3. Implementation Patterns
    4. Viewpoints
    5. The Pattern Frame
    6. Constraints
    7. Pattlets
    8. Summary
  5. 3. Data Movement Patterns
    1. Architecture: Data Movement Root Patterns
    2. Architecture: Move Copy of Data Approaches
    3. Design and Implementation: Data Replication Patterns
    4. Data Replication Deployment
    5. Data Movement Patterns
    6. Move Copy of Data
      1. Context
      2. Problem
      3. Forces
      4. Solution
        1. Source
        2. Movement Set
          1. Variant: Composite Movement Set
        3. Data Movement Link
          1. Acquire
          2. Manipulate
          3. Write
        4. Target
      5. Resulting Context
        1. Benefits
        2. Liabilities
        3. Next Considerations
      6. Examples
        1. Simple Data Movement for Reporting Purposes
        2. Complex Data Movement for Reporting Purposes
        3. Master-Master Data Movement
      7. Related Patterns
        1. Patterns That May Have Led You Here
        2. Patterns That You Can Use Next
        3. Other Patterns of Interest
    7. Data Replication
      1. Context
      2. Problem
      3. Forces
      4. Solution
        1. Source
        2. Replication Set
        3. Replication Link
          1. Acquire
          2. Manipulate
          3. Write
        4. Target
      5. Examples
        1. Feeding Management Information Reports
        2. Provisioning a Mobile Sales Force and Synchronizing Their Work
        3. Provisioning a Large Number of Targets
      6. Resulting Context
        1. Benefits
        2. Liabilities
        3. Next Considerations
      7. Related Patterns
        1. Patterns That May Have Led You Here
        2. Patterns That You Can Use Next
        3. Other Patterns of Interest
    8. Master-Master Replication
      1. Context
      2. Problem
      3. Forces
      4. Solution
        1. Replication Unit
        2. Conflicts
          1. Conflict Detection
          2. Conflict Resolution
        3. Elements of Master-Master Replication
          1. Source and Target
          2. Acquire
          3. Manipulate
          4. Write
      5. Example: Synchronizing Laptops and a Central Database
      6. Resulting Context
        1. Benefits
        2. Liabilities
        3. Next Considerations
      7. Related Patterns
        1. Patterns That May Have Led You Here
        2. Patterns That You Can Use Next
        3. Other Patterns of Interest
      8. Acknowledgments
    9. Master-Slave Replication
      1. Context
      2. Problem
      3. Forces
      4. Solution
        1. Source
        2. Acquire
        3. Manipulate
        4. Write
        5. Target
      5. Examples
        1. Remote Read-Only Access Across a Low Bandwidth Connection
        2. Operational Database and Reporting Database
      6. Resulting Context
        1. Benefits
        2. Liabilities
      7. Related Patterns
        1. Patterns That May Have Led You Here
        2. Patterns That You Can Use Next
        3. Other Patterns of Interest
    10. Master-Master Row-Level Synchronization
      1. Context
      2. Problem
      3. Forces
      4. Solution
        1. Controller
        2. Source/Target
        3. Acquire
        4. Manipulate
        5. Write
      5. Example
        1. Algorithm using timestamps for conflict detection
      6. Resulting Context
        1. Additional Liability
      7. Operational Considerations
      8. Related Patterns
        1. Patterns That May Have Led You Here
        2. Patterns That You Can Use Next
        3. Other Patterns of Interest
      9. Acknowledgments
    11. Master-Slave Snapshot Replication
      1. Context
      2. Problem
      3. Forces
      4. Solution
        1. Source
        2. Acquire
        3. Manipulate
        4. Write
        5. Target
      5. Example
      6. Resulting Context
        1. Benefits
        2. Liabilities
      7. Security Considerations
      8. Related Patterns
        1. Patterns That May Have Led You Here
        2. Patterns That You Can Use Next
        3. Patterns of Interest
    12. Capture Transaction Details
      1. Context
      2. Problem
      3. Forces
      4. Solution
        1. Prerequisites
        2. Designing Your Own Recording of Transactions
      5. Resulting Context
        1. Benefit
        2. Liability
        3. Next Considerations
      6. Variants
        1. Combining Operations
      7. Related Patterns
        1. Patterns That May Have Led You Here
        2. Patterns That You Can Use Next
    13. Master-Slave Transactional Incremental Replication
      1. Context
      2. Problem
      3. Forces
      4. Solution
        1. Background
          1. Transaction Order for Replay
          2. Handling Triggers, If the Write Uses Standard SQL
        2. Prerequisites
        3. Elements of the Replication Building Block
          1. Source
          2. Acquire
          3. Manipulate
          4. Write
          5. Target
      5. Example
      6. Resulting Context
        1. Benefit
        2. Liability
      7. Security Considerations
      8. Operational Considerations
      9. Variants
        1. Higher Robustness
        2. Implementing a Change History
          1. Additional Prerequisites
          2. Operational Considerations
      10. Related Patterns
        1. Patterns That May Have Led You Here
        2. Patterns That You Can Use Next
        3. Other Patterns of Interest
    14. Implementing Master-Master Row-Level Synchronization Using SQL Server
      1. Context
      2. Background
        1. Synchronization Building Block
          1. Synchronization Controller
          2. Source
          3. Acquire
          4. Manipulate
          5. Write
          6. Target
        2. SQL Server Replication Services
          1. Replication Types
          2. Platform Roles
          3. Software Components
        3. Mapping the Synchronization Building Block to SQL Server
          1. Defining the Replication Set
          2. Synchronization Controller
          3. Source
          4. Acquire
          5. Manipulate
          6. Write
          7. Target
      3. Implementation Strategy
        1. To set up a new replication link
      4. Example
        1. Overview
        2. Configuring the Publisher and the Distributor
        3. Creating a Publication
        4. Creating a Subscription
        5. Starting and Restarting the Synchronization
        6. Testing the Example
      5. Resulting Context
        1. Benefits
        2. Liabilities
      6. Testing Considerations
      7. Security Considerations
      8. Operational Considerations
      9. Related Patterns
        1. Patterns That May Have Led You Here
        2. Other Patterns of Interest
    15. Implementing Master-Slave Snapshot Replication Using SQL Server
      1. Context
      2. Background
        1. Replication Building Block
          1. Source
          2. Acquire
          3. Manipulate
          4. Write
          5. Target
        2. SQL Server Snapshot Replication
        3. Platform Roles
          1. Software Components
        4. Mapping the Replication Building Block to SQL Server
          1. Source
          2. Replication Set
          3. Acquire
          4. Manipulate
          5. Write
          6. Target
      3. Implementation Strategy
      4. Example
        1. Overview
        2. Configuring the Publisher and the Distributor
        3. Creating a Publication
        4. Defining a DTS Package for the Transformation
        5. Creating a Subscription
        6. Starting and Restarting the Snapshot Replication
        7. Testing the Example
      5. Resulting Context
        1. Benefits
        2. Liabilities
      6. Testing Considerations
      7. Security Considerations
      8. Operational Considerations
      9. Related Patterns
        1. Patterns that May Have Led You Here
        2. Other Patterns of Interest
    16. Implementing Master-Slave Transactional Incremental Replication Using SQL Server
      1. Context
      2. Background
        1. Replication Building Block
          1. Source
          2. Acquire
          3. Manipulate
          4. Write
          5. Target
        2. SQL Server Transactional Replication
          1. Platform Roles
          2. Software Components
        3. Mapping the Replication Building Block to SQL Server
          1. Source
          2. Replication Set
          3. Acquire
          4. Manipulate
          5. Write
          6. Target
      3. Implementation Strategy
      4. Example
        1. Overview
        2. Configuring the Publisher and the Distributor
        3. Creating a Publication
        4. Defining a DTS Package for the Transformation
        5. Creating a Subscription
        6. Starting and Restarting the Synchronization
        7. Testing the Example
      5. Resulting Context
        1. Benefits
        2. Liabilities
      6. Testing Considerations
      7. Security Considerations
      8. Operational Considerations
      9. Related Patterns
        1. Patterns that May Have Led You Here
        2. Other Patterns of Interest
    17. Master-Slave Cascading Replication
      1. Context
      2. Problem
      3. Forces
      4. Solution
        1. Next Considerations
        2. Number of CITSs
        3. Limiting the Number of Replication Links
        4. Amount of Data for Each CITS
        5. Data Structure for Each CITS
      5. Examples
        1. Different Lengths of Replication Chains
        2. Two Sources and Conflict Detection and Resolution
      6. Resulting Context
        1. Benefits
        2. Liabilities
      7. Operational Considerations
      8. Related Patterns
        1. Patterns That May Have Led You Here
        2. Patterns That You Can Use Next
        3. Other Patterns of Interest
  6. A. Patterns and Pattlets
  7. B. Glossary
  8. C. Additional Resources
  9. About the Author
  10. Copyright