types of failure and acid property(basics transaction) by aditi waghela

5
Types of Failure And ACID Property Q. What do you mean by transaction? A transaction is a logical unit of work, which involves may database operations. A transaction is a collection of operations that forms a single logical unit of work. A transaction is a unit of program executions that accesses and possibly updates various databases. Example: Banking system, Student database performs transactions. Types of Failure 1. Transaction failures : It causes a transaction to fail. It is again of 2 types. Logical error: When transaction can no longer continue with its normal execution because of some internal condition such as bad i/p, data not found, data overflow etc. it gives incorrect result. This is logical error. Ex: any student data. System error: When system enters in some undesirable state, then also the transaction can’t continue it’s normal execution. Ex: deadlock state.

Upload: api-27570914

Post on 10-Apr-2015

2.323 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Types of Failure and ACID Property(Basics Transaction) by Aditi Waghela

TTyyppeess ooff FFaaiilluurree AAnndd AACCIIDD PPrrooppeerrttyy

QQ.. WWhhaatt ddoo yyoouu mmeeaann bbyy ttrraannssaaccttiioonn??

A transaction is a logical unit of work, which involves may

database operations. A transaction is a collection of operations that forms a single

logical unit of work. A transaction is a unit of program executions that accesses and

possibly updates various databases. Example: Banking system, Student database performs

transactions.

Types of Failure

1. Transaction failures: It causes a transaction to fail. It is

again of 2 types.

•Logical error: When transaction can no longer continue with

its normal execution because of some internal condition such as bad i/p, data not found, data overflow etc. it gives incorrect result. This is logical error. �Ex: any student data. •System error: When system enters in some undesirable state, then also the transaction can’t continue it’s normal execution.

� Ex: deadlock state.

Page 2: Types of Failure and ACID Property(Basics Transaction) by Aditi Waghela

2. System crash: In system crash there is a h/w malfunction or

a bug in the database s/w or the operating system, that causes the loss of content of volatile storage and brings transaction processing to a halt.

3.Disk failure: In this, a disk block loses its content as a result of

either head crash or failure during data transfer operation. Copies of data on other disk as tapes are used to recover them from failure.

Transaction States DIAGRAM: A transaction must be in one of the following states:

Active - It is initial state of transaction, transaction always

stays in this state while it is executing.

ACTIVE

PARTIALLY COMMITTED

FAILED ABORTED

COMMITTED

Page 3: Types of Failure and ACID Property(Basics Transaction) by Aditi Waghela

Partially committed – Transaction stays in this state after the

final statement of the transaction has been executed. At this point, the transaction has completed its execution, but it is still possible that it may have to be aborted. Since the actual output may still be there in main memory, and thus a h/w failure may preclude its successful completion.

Failed – After the discovery that normal execution can no

longer proceed, transaction enters in final state.

Aborted - After the transaction has been rolled back and the database has been restored to its state prior to the start of the transaction, it enters in aborted state.

Committed – A transaction is in this state after it has

successfully completed it’s execution.

ACID Property

ACID properties are the properties of transaction.

A Atomicity

C Consistency

I Isolation

D Durability

Atomicity: Transactions are atomic, i.e., either all

operations of transactions are reflected in the database properly, or none are.

Consistency: Transactions preserve database consistency, i.e., a transaction transforms a consistent state of database into

Page 4: Types of Failure and ACID Property(Basics Transaction) by Aditi Waghela

another consistent state, without preserving consistency at all

intermediate points.

Isolation: Even though, multiple transactions may execute concurrently, the system guarantees that, for every pair ti and tj, it appears to ti that either tj finished execution before ti started or tj started execution after ti finished. Thus each transaction is unaware of other

transactions executing concurrently in the system.

Durability: Once a transaction commits, it updates survive in

the database, even if there is a subsequent system crash.

Access to the Database

Access to the database is accomplished by following two operations –

I) Read (X) – Which transfers the data item X from the

database to a local buffer belonging to the transaction that

executed the read operation.

II) Write (X) – Which transfers the data item X from the

database to a local buffer of the transaction and executed the

write operation back to the database.

Requirement of ACID Property For

Example: Let, We Have a Transaction T T: read (X);

X: = X-50;

Write (X);

Read (Y);

Y=Y+50;

Write (Y);

Page 5: Types of Failure and ACID Property(Basics Transaction) by Aditi Waghela

This transaction transfers $50 from acc. X to acc. Y

Consistency: Requirement here is that sum of the amounts of

both the account should be same before and after transaction. As money

cannot be destroyed or created.

Atomicity: Let the amount is $5000 in X and $2000 in Y prior to the execution of the transaction T. While execution of T, a failure (say h/w or s/w or power failure) has occurred that prevented T from completing it successfully.

So atomicity says either complete execution of transaction T should take place or there should be no transaction, that is handled by Transaction-management component. -

Isolation: This property ensures that the concurrent execution of transaction results in a system state that is equivalent to a state that could have been obtained had these transactions executed one at a time in some order. It is the responsibility of system called concurrency-control

component.

Durability: This property guarantees that, once a transaction completes successfully, all the updates that it carried out on the database

persist, even if there is a system failure after the transaction completes

execution. Ensuring durability is the responsibility of Recovery-

management component.