Question

In: Computer Science

Please i want conduct excessive research on the Transaction processing in DBMS.

Please i want conduct excessive research on the Transaction processing in DBMS.

Solutions

Expert Solution

Transaction

The transaction is a set of logically related operation. It contains a group of tasks. A transaction is an action or series of actions, it is performed by a single user to perform operations for accessing the contents of the database.

Example: Suppose an employee of bank transfers Rs 800 from X's account to Y's account. This small transaction contains several low-level tasks:

X's Account

1. Open_Account(X)

2. Old_Balance = X.balance

3. New_Balance = Old_Balance - 800

4. X.balance = New_Balance

5. Close_Account(X)

Y's Account

1. Open_Account(Y)

2. Old_Balance = Y.balance

3. New_Balance = Old_Balance + 800

4. Y.balance = New_Balance

5. Close_Account(Y)

Operations of Transaction:

Read(X): Read operation is used to read the value of X from the database and stores it in a buffer in main memory.

Write(X): Write operation is used to write the value back to the database from the buffer.

Example to debit transaction from an account which consists of following operations:

1. R(X);

2. X = X - 500;

3. W(X);

Let's assume the value of X before starting of the transaction is 4000.

The first operation reads X's value from database and stores it in a buffer.

The second operation will decrease the value of X by 500. So buffer will contain 3500.

The third operation will write the buffer's value to the database. So X's final value will be 3500.

But it may be possible that because of the failure of hardware, software or power, etc. that transaction may fail before finished all the operations in the set.

For example: If in the above transaction, the debit transaction fails after executing operation 2 then X's value will remain 4000 in the database which is not acceptable by the bank.

To solve this problem, we have two important operations:

1. Commit: It is used to save the work done permanently.

2. Rollback: It is used to undo the work done.

Transaction property :

The transaction has the four properties. These are used to maintain consistency in a database, before and after the transaction.

1. Atomicity

2. Consistency

3. Isolation

4. Durability

Atomicity

It states that all operations of the transaction take place at once if not, the transaction is aborted.

There is no midway, i.e., the transaction cannot occur partially. Each transaction is treated as one unit and either run to completion or is not executed at all.

Atomicity involves the following two operations:

1. Abort: If a transaction aborts then all the changes made are not visible.

2. Commit: If a transaction commits then all the changes made are visible.

Example: Let's assume that following transaction T consisting of T1 and T2. A consists of Rs 600 and B consists of Rs 300. Transfer Rs 100 from account A to account B.

T1                          T2

Read(A)                Read(B)

A:= A-100            Y:= Y+100

Write(A)               Write(B)

                                                           

After completion of the transaction, A consists of Rs 500 and B consists of Rs 400.

If the transaction T fails after the completion of transaction T1 but before completion of transaction T2, then the amount will be deducted from A but not added to B. This shows the inconsistent database state. In order to ensure correctness of database state, the transaction must be executed in entirety.

Consistency

The integrity constraints are maintained so that the database is consistent before and after the transaction.

The execution of a transaction will leave a database in either its prior stable state or a new stable state.

The consistent property of database states that every transaction sees a consistent database instance.

The transaction is used to transform the database from one consistent state to another consistent state.

For example: The total amount must be maintained before or after the transaction.

1. Total before T occurs = 600+300=900

2. Total after T occurs= 500+400=900

Therefore, the database is consistent. In the case when T1 is completed but T2 fails, then inconsistency will occur.

Isolation

It shows that the data which is used at the time of execution of a transaction cannot be used by the second transaction until the first one is completed.

In isolation, if the transaction T1 is being executed and using the data item X, then that data item can't be accessed by any other transaction T2 until the transaction T1 ends.

The concurrency control subsystem of the DBMS enforced the isolation property.

Durability

The durability property is used to indicate the performance of the database's consistent state. It states that the transaction made the permanent changes.

They cannot be lost by the erroneous operation of a faulty transaction or by the system failure. When a transaction is completed, then the database reaches a state known as the consistent state. That consistent state cannot be lost, even in the event of a system's failure.

The recovery subsystem of the DBMS has the responsibility of Durability property.

States of Transaction

In a database, the transaction can be in one of the following states -

Active state

The active state is the first state of every transaction. In this state, the transaction is being executed.

For example: Insertion or deletion or updating a record is done here. But all the records are still not saved to the database.

Partially committed

In the partially committed state, a transaction executes its final operation, but the data is still not saved to the database.

In the total mark calculation example, a final display of the total marks step is executed in this state.

Committed

A transaction is said to be in a committed state if it executes all its operations successfully. In this state, all the effects are now permanently saved on the database system.

Failed state

If any of the checks made by the database recovery system fails, then the transaction is said to be in the failed state.

In the example of total mark calculation, if the database is not able to fire a query to fetch the marks, then the transaction will fail to execute.

Aborted

If any of the checks fail and the transaction has reached a failed state then the database recovery system will make sure that the database is in its previous consistent state. If not then it will abort or roll back the transaction to bring the database into a consistent state.

If the transaction fails in the middle of the transaction then before executing the transaction, all the executed transactions are rolled back to its consistent state.

After aborting the transaction, the database recovery module will select one of the two operations:

1. Re-start the transaction

2. Kill the transaction


Related Solutions

I want to conduct research on my topic" In adults with chronic neck pain, what is...
I want to conduct research on my topic" In adults with chronic neck pain, what is the minimum dose of manipulation necessary to produce a clinically important improvement in neck pain compared to supervised exercise at 6 weeks"? I want to find 6-8 articles wtih 4 of them being peer reviewed, no more than 8 years old and you will develop an APA and style and reference pages. 3-4 pages long
I JUST WANT AN EXAMPLE ANSWER SO I CAN MAKE MY OWN. THANK YOU!! Conduct research...
I JUST WANT AN EXAMPLE ANSWER SO I CAN MAKE MY OWN. THANK YOU!! Conduct research on New York City's large soda ban. Pretend you work at the Paradise City attorney's office. Draft a law that restricts the sale of large sugary drinks in Paradise City. Make sure to define the types of drinks and types of sellers restricted by the law. Example Statute: Title XXXIV (Links to an external site.)Links to an external site. ALCOHOLIC BEVERAGES AND TOBACCO Chapter...
What is Application Controls for Transaction Processing
What is Application Controls for Transaction Processing
A research about Anorexia. ( five years old article) please i want a APA reference with...
A research about Anorexia. ( five years old article) please i want a APA reference with it( not more than 5 years)
Choose a business you want to establish in the future Conduct a thorough research about the...
Choose a business you want to establish in the future Conduct a thorough research about the business, what it takes to establish it (fund, location, experience, etc….) and why you choose that kind of business? Develop a business plan Conduct a SWOT analysis about the business of your choice Summary: Write two pages about the project Please Note the whole document has to be not less than 1500 words
please tell me how I can construct er diagram on Netflix and on hotelmangement in dbms...
please tell me how I can construct er diagram on Netflix and on hotelmangement in dbms and also tell me how I convert er diagram of Netflix in third normal form(3nf). also explain the queries .
Please I want answers for these questions. Thanks Note: I want them by typing not by...
Please I want answers for these questions. Thanks Note: I want them by typing not by hand writing Q2 Explain why a market structure in which money is used as a medium of exchange is more conducive to the expansion of trade and exchange than a barter system. What is money? Explain the three functions that money performs. What is the relationship between money and inflation? Explain
I WANT TO IMPLEMENT THIS IN JAVA PLEASE I want to create a small user input...
I WANT TO IMPLEMENT THIS IN JAVA PLEASE I want to create a small user input system for a university student, where they put the season and year of when they started their uni course. For example the system will ask "What year did you start your degree?", the user will input "Autumn/2022" as a string. Now from a string format as shown, it should take that user input and calculate for example +2 or +3 years to the date....
Briefly describe the elements of the transaction processing cycle.
Briefly describe the elements of the transaction processing cycle.
I want you to conduct a hypothesis test for a difference of means for cholesterol levels...
I want you to conduct a hypothesis test for a difference of means for cholesterol levels between male and female students. There are 148 females and 164 males in our sample.   You can treat this as a large sample problem and use z-values for confidence intervals and hypothesis tests (however, Excel uses a t-value in anything it calculates). The output from Microsoft Excel is given below to help. Your job will be to find the right numbers in the output to...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT