Timestamps or Version Numbers Advantages Disadvantages • Simple • Nearly every database can query with a where clause. • • • • 14 Which Change Data Capture Strategy Is Right for You? Must be built into database Bloats database size Query requires considerable compute resources in source database Not always reliable Table Triggers Advantages • Very reliable and detailed • Changes can be captured, almost as fast as they are made – real-time CDC. Disadvantages • Significant drag on database resources, both compute and storage. • Requires that the database have the capability. • Negative impact on performance of applications that depend on the source database. 15 Which Change Data Capture Strategy Is Right for You? Snapshot or Table Comparison Advantages Disadvantages • Relatively easy to implement with good ETL software. • Requires no specialized knowledge of the source database. • Very dependable and accurate. • Requires repeatedly moving all data in monitored tables. May impact target or staging system resources and network bandwidth. • Moving lots of data can be slow, may not meet SLA’s. • Joining, comparing, and finding changes may also take time. Even slower. • Not a complete record of intermediate changes between snapshot captures. 16 Which Change Data Capture Strategy Is Right for You? Log Scraping Advantages Disadvantages • Very reliable and detailed. • Virtually no impact on database or application performance. • Changes captured in real-time. • No database bloat. • Every RDMS has a different log format, often not documented. • Log formats often change between RDBMS versions. • Log files are frequently archived by the database. CDC software must read them before they’re archived, or be able to go read the archived logs. • Requires specialized CDC software. Cannot be easily accomplished with ETL software. • Can fail if connectivity is lost on source or target, causing lost data, duplicated data, or need to restart from initial data load. 17 Which Change Data Capture Strategy Is Right for You?