Transaction Management - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Transaction Management

Description:

Consistency / Serializability. ... Consistency requirement the sum of A and B is unchanged by the execution of the transaction. ... – PowerPoint PPT presentation

Number of Views:52
Avg rating:3.0/5.0
Slides: 18
Provided by: perdanaFs
Category:

less

Transcript and Presenter's Notes

Title: Transaction Management


1
Transaction Management
  • WXES 2103
  • Database

2
Content
  • What is transaction
  • Transaction properties
  • Transaction management with SQL
  • Transaction log
  • DBMS Transaction Subsystem

3
Transaction Concepts
  • A transaction is a unit of program execution that
    accesses and possibly updates various data
    items.
  • A transaction must see a consistent database.
  • During transaction execution the database may be
    inconsistent.
  • When the transaction is committed, the database
    must be consistent.

4
Transaction Concepts (cont)
  • If the transaction aborted, the DB must be
    restored to its prior state. Means such
    transaction must be undone or rolled back
  • Two main issues to deal with
  • Failures of various kinds, such as hardware
    failures and system crashes
  • Concurrent execution of multiple transactions

5
ACID Properties
  • To preserve integrity of data, the database
    system must ensure
  • Atomicity.
  • Either all operations of the transaction are
    properly reflected in the database or none are.
  • Consistency / Serializability.
  • Execution of a transaction in isolation
    preserves the consistency of the database.

6
ACID Properties (cont)
  • Isolation.
  • Although multiple transactions may execute
    concurrently, each transaction must be unaware of
    other concurrently executing transactions.
    Intermediate transaction results must be hidden
    from other concurrently executed transactions.
  • That is, for every pair of transactions Ti and
    Tj, it appears to Ti that either Tj, finished
    execution before Ti started, or Tj started
    execution after Ti finished.

7
ACID Properties (cont)
  • Durability.
  • After a transaction completes successfully, the
    changes it has made to the database persist, even
    if there are system failures.

8
Trans. Mgt. with SQL
  • COMMIT statement ends the SQL trans. effects
    permanently recorded within DB
  • ROLLBACK statement DB is rolled back to its
    previous consistent state and all the changes are
    aborted
  • Reach end of the program successfully similar
    to COMMIT
  • Program abnormally terminated similar to
    ROLLBACK

9
Transaction Log
  • Keep track of all transactions that update the DB
  • If failure occurs, information that was stored
    here will be used for recovery
  • It is triggered by ROLL BACK statement, program
    abnormal termination, or system failure
  • It stotes before-and-after data of the DB and the
    tables, rows and attribute values that
    participated in the transaction

10
Transaction Log (cont)
  • The transaction log is subject to dangers such as
    disk full conditions and disk crashes
  • It has to be managed like other DBs
  • Transaction log will increase the processing
    overhead but it is worthwhile

11
Example of Fund Transfer
  • Transaction to transfer 50 from account A to
    account B
  • 1. read(A)
  • 2. A A 50
  • 3. write(A)
  • 4. read(B)
  • 5. B B 50
  • 6. write(B)
  • Consistency requirement the sum of A and B is
    unchanged by the execution of the transaction.
  • Atomicity requirement if the transaction fails
    after step 3 and before step 6, the system should
    ensure that its updates are not reflected in the
    database, else an inconsistency will result.

12
Fund Transfer (cont)
  • Durability requirement once the user has been
    notified that the transaction has completed
    (i.e., the transfer of the 50 has taken place),
    the updates to the database by the transaction
    must persist despite failures.
  • Isolation requirement if between steps 3 and 6,
    another transaction is allowed to access the
    partially updated database, it will see an
    inconsistent database (the sum A B will be
    less than it should be).Can be ensured trivially
    by running transactions serially, that is one
    after the other. However, executing multiple
    transactions concurrently has significant
    benefits (this is not covered in WXES2103)

13
Transaction state
  • Active, the initial state the transaction stays
    in this state while it is executing
  • Partially committed, after the final statement
    has been executed.
  • Failed, after the discovery that normal execution
    can no longer proceed.
  • Aborted, after the transaction has been rolled
    back and the database restored to its state prior
    to the start of the transaction. Two options
    after it has been aborted
  • restart the transaction only if no internal
    logical error
  • kill the transaction
  • Committed, after successful completion.

14
DBMS Transaction Subsystem
Scheduler/ Lock Manager
Transaction Manager
Database Manager
Recovery Manager
Buffer Manager
File Manager
Access Manager
Systems Manager
Database and system catalog
15
DBMS Transaction Subsystem
  • Trans. Mgr. coordinates transactions on
  • behalf of application program. It communicates
    with scheduler.
  • Scheduler implements a strategy for concurrency
    control.
  • If any failure occurs, recovery manager handles
    it.
  • Buffer manager in charge of transferring data
    between disk storage and main memory.

16
DBMS Transaction Subsystem
  • File manager manipulates the underlying storage
    files and manages the allocation of storage space
    on disk.
  • File manager does not directly manage the
    physical input and output of data, rather it
    passes the requests on to the access manager.
  • Appropriate access method is used to either read
    or write data into the system manager.

17
  • END
  • Next class Concurrency Control
Write a Comment
User Comments (0)
About PowerShow.com