際際滷

際際滷Share a Scribd company logo
Sedna XML DBMS: Transactions and Recovery Alexander Kalinin [email_address] Nickolay Zavaritsky [email_address] Sedna Team
General principles ACID transactions Atomicity  rollback procedure Consistency  by design Isolation  S2PL and snapshots Durability  two-level recovery scheme Versioning environment Support for Read-Only transactions Physical recovery using persistent snapshot Logical recovery using log of microoperations
Versioning Scheme Page-level versioning Consistent with internal representation (e.g. following the pointers) Transaction-transparent solution All logic is encapsulated in a separate module on SM Limited number of versions for each page More effective maintenance and garbage collecting ( 4 versions on 2 snapshots ) Support for snapshots to process read-only transactions No isolation is required Long-running read-only transactions cannot be rolled back due to the lack of versions
油
油
油
油
油
Rollback and Recovery scheme Normal processing: Logical logging of all microoperations (1 record per microoperation + 1 record per changed persistent version) Transaction-consistent snapshots on checkpoints Rollback processing: Undo microoperations using logical log records Two-level recovery process: Restore transaction-consistent state using persistent snapshot Redo the necessary microoperations using logical log
Recovery process
Isolation Usual transactions S2PL protocol Document-level granularity Read-only transactions No isolation is required since they use transaction-consistent snapshots
Thank you for your attention!

More Related Content

Sedna XML Database: Transactions and Recovery

  • 1. Sedna XML DBMS: Transactions and Recovery Alexander Kalinin [email_address] Nickolay Zavaritsky [email_address] Sedna Team
  • 2. General principles ACID transactions Atomicity rollback procedure Consistency by design Isolation S2PL and snapshots Durability two-level recovery scheme Versioning environment Support for Read-Only transactions Physical recovery using persistent snapshot Logical recovery using log of microoperations
  • 3. Versioning Scheme Page-level versioning Consistent with internal representation (e.g. following the pointers) Transaction-transparent solution All logic is encapsulated in a separate module on SM Limited number of versions for each page More effective maintenance and garbage collecting ( 4 versions on 2 snapshots ) Support for snapshots to process read-only transactions No isolation is required Long-running read-only transactions cannot be rolled back due to the lack of versions
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9. Rollback and Recovery scheme Normal processing: Logical logging of all microoperations (1 record per microoperation + 1 record per changed persistent version) Transaction-consistent snapshots on checkpoints Rollback processing: Undo microoperations using logical log records Two-level recovery process: Restore transaction-consistent state using persistent snapshot Redo the necessary microoperations using logical log
  • 11. Isolation Usual transactions S2PL protocol Document-level granularity Read-only transactions No isolation is required since they use transaction-consistent snapshots
  • 12. Thank you for your attention!