Reading Notes: transaction information system (I)

Source: Internet
Author: User

It took a lot of time to read the transaction information system: concurrency control and recovery theory, algorithms, and practices

English name: transactional information systems: Theory, algorithms, and the practice of concurrency control

The Chinese translation version of this book is out of print, and it does not seem to have been printed. In order to try to read it, I printed it out in pdf. There are 880 pages and two books are bound ~~~ Easy to sink

 

The reason why I read this book is that I read Jim Gray's classic transaction book and found this book, because Jim Gray's book is too heavy, it's hard to get it (the original version feels like it will break into a schoolbag); and this book is newer, the most important thing is that there is only one person in order: Jim Gray himself.

 

The so-called transactions are indeed put forward in the database field. There are many theories, and they are very Nb. I don't know why there are very few researchers in the engineering field. Generally, everyone goes straight to the Code, such as MySQL, such as ipvs. However, many comments indicate that we have referred to Jim Gray and how to improve the code. The theory is the basis of practice. I have read some articles such as the xxx source code analysis. I can't say that the author doesn't understand or write well, but I didn't make things clear, there is a feeling that you don't know why.

In fact, transactions are not limited to databases, and acid should not be just a concept of data. Theoretically, all web systems should support transactions, due to performance problems, the problem of time and level reminds me of a problem in the question Library: data is not synchronized between memorycache, MySQL, and redis, which is the reason for the lack of transaction support.

From the perspective of writing, this book is relatively plain. I basically returned the English language to the teacher's master, and it seems that it is not a problem, except that the reasoning part can't be understood or can't be viewed, others can understand.

 

In general, this book focuses on two important topics provided by the transaction system: concurrency control and recovery. Currently, I only read the first part of concurrency control. Since both Chinese and mathematics are returned to the teacher, so I can only express my feelings in chapters:

Chapter 1 what is it all about? General outline: Let's introduce what this book is, transactions, databases, and so on.

Chapter 2 computational models computing model puts forward two important concepts: Page Model and object model. According to my own inaccurate understanding, page model mainly involves read/write operations; the object model is mainly used to describe something that is a little complex: search, insert, and search_range.

 

Chapter 3 concurrency control: notions of correctness for the page model pure theory, describes this thing: N transactions contain a series of read/write operations, so adjust the read/write operations, to make the results look the same.

Chapter 4 concurrency control algorithms specific algorithms, mainly lock, the core algorithm is 2PL, two-phase lock protocol.

 

The theoretical basis of Chapter 5 multiversion concurrency control multi-version control lies in Chapter 5.5, and several different multi-version protocols are proposed.

Chapter 6 concurrency control on objects:Notions of correctness: Object Model'sTheoretical Basis, so tossing basic operations to ensure transactions

Chapter 7 concurrency control algorithms on objects: the core of a specific algorithm lies in the sequence of tossing object operations.

Chapter 8 concurrency control on relational databases: Concerning relational databases, how can we solve the above problems.

Chapter 9 concurrency control on search Structures

Chapter 10 Implementation and pragmatic issues: Specific Optimization Method

 

In general, concurrency control implements MVCC and lock in two ways.

Lock: the idea of the lock is actually something that everyone can do. In the event of a conflict, only one person can do the work and wait for him to finish the work. DB2 is a pure lock implementation. It is said that the history of SQL Server is also

MVCC: MVCC is relatively complex. The same data has multiple versions, which can greatly improve the concurrency of read and write operations. However, this does not mean that MVCC does not need to be locked, writing is still not parallel. MVCC also has a variety of different network protocols and different implementation methods.

Reading Notes: transaction information system (I)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.