当前位置:网站首页>Concurrency Control & NoSQL and new database
Concurrency Control & NoSQL and new database
2022-07-07 14:52:00 【weixin_ forty-five million seven hundred and fifty thousand fou】
concurrency control
1、 Why concurrency control in database ? What characteristics of transactions can concurrency control technology ensure ?
Share resources when database , Usually multiple transactions are executed at the same time . Simultaneous reads occur when multiple transactions are accessed simultaneously / Write the same data . If you do not control concurrent operations, you may access incorrect data , Destroy the consistency of transactions .
Concurrency control ensures the consistency and isolation of transactions
2、 What kinds of data inconsistencies will be caused by concurrent operations ? How can we avoid
1) Missing changes , Two transactions modify the same data at the same time , Then the operation of one transaction will be overwritten by the modification of another transaction .
2) It can't be read repeatedly , After a transaction reads some data , Another transaction updates it , Then when you read it again, you will get different data from the last time .
3) Read dirty data , A transaction modifies some data and writes it back to disk , After another transaction reads the data , The previous transaction was cancelled for some reason .
The way to avoid inconsistency is concurrency control , Common concurrency control methods include blocking method 、 Timestamp method 、 Optimistic control 、 Multi version concurrency control method, etc
3、 Blockade and types of blockade
Blockade is business T Before operating on a data , Send a request to the system first , Lock it , After you lock the data, you must have control over the transaction , In the transaction T Before releasing the lock , Other transactions cannot update or read the data
The types of blockade are : Exclusive lock 、 Shared lock
4、 What problems can the three-level agreement solve
Add X lock , Release until the transaction is over . Solved the problem of missing modifications .
stay 1 Add on the basis S lock , After reading, you can release , Solved the problem of reading dirty data .
stay 1 Add on the basis S lock , Release until the transaction is over , Solved the unrepeatable read problem
5、 Live lock 、 Causes and solutions of live lock
When a series of blocking operations cannot be performed in the correct order , It may cause transactions to wait indefinitely for a blockade .
The way to avoid livelocks is to use FCFS
6、 Deadlock 、 Deadlock solution
Deadlock refers to the execution of two or more processes , A blocking phenomenon caused by competition for resources or communication with each other , If there is no external force , They will not be able to move forward . These processes that are always waiting for each other are called deadlock processes .
There are two ways to prevent deadlock : Deadlock prevention 、 Deadlock diagnosis and release
There are two ways to prevent deadlocks : One time blockade 、 Sequential blockade
Deadlock diagnosis and resolution : Overtime method 、 Transaction wait graph
Relief law : Choose the transaction with the lowest deadlock cost , Release it
7、 What kind of concurrent scheduling is the correct scheduling
Serializable concurrent scheduling is the correct scheduling . Serializable scheduling definition : Concurrent execution of multiple transactions is correct , When and
Only if the result is the same as that of serial execution executed in a certain order .
8、 How to ensure the correctness of concurrent scheduling
Conflicts can be serialized , Use two-stage lock protocol
NoSQL and New database
since 1970 Since then , Database technology has developed to the fourth generation , The first generation is 60~70 Hierarchical and mesh database system in early , The second generation is 70 The relational database system started in the mid-s , The third generation is 80 Object database system and 90 Expand the model of , Make the relational database system have object-oriented function .
since 2000 Since then ,Web technology 、 Social networks 、 Advances in mobile computing and the Internet of things have led to semi-structured applications generated worldwide 、 Unstructured data is growing explosively , Such applications create a variety of different requirements , Including horizontal scalability 、 Support large-scale and massive data processing capacity , The system should have high availability and fault tolerance to deal with hardware and software failures , And can respond to client requests by using additional resources , So as to improve the query processing speed , This leads to the fourth generation database technology NoSQL and NewSQL The emergence of Technology .
NoSQL The key feature of a database is :(1) Use graphics 、 Trees 、 Key value 、 Data models other than tabular models such as documents ;(2) There is no fixed schema definition in database design ;(3) Provide implicit support for horizontal scalability ;(4) Have final consistency rather than strong consistency .NoSQL Another important concept of is CAP Theorem , It provides some constraints on the attributes that are crucial to distributed systems , namely : Uniformity 、 Availability and partition fault tolerance .CAP The theorem shows that , The distributed system can only meet the following requirements at any given time 2 Attributes .
NewSQL It is the latest generation of database system , It not only provides NoSQL The database system has scalability and scalability
Usability , It also retains the traditional relational database ACID characteristic 、 Relational data model and SQL query language
边栏推荐
- 6. Electron borderless window and transparent window lock mode setting window icon
- Classification of regression tests
- 《微信小程序-进阶篇》组件封装-Icon组件的实现(一)
- 一文读懂数仓中的pg_stat
- Data Lake (IX): Iceberg features and data types
- PLC: automatically correct the data set noise, wash the data set | ICLR 2021 spotlight
- Es log error appreciation -- allow delete
- 属性关键字OnDelete,Private,ReadOnly,Required
- 今日睡眠质量记录78分
- Navigation - are you sure you want to take a look at such an easy-to-use navigation framework?
猜你喜欢
随机推荐
#yyds干货盘点# 解决名企真题:交叉线
安恒堡垒机如何启用Radius双因素/双因子(2FA)身份认证
【历史上的今天】7 月 7 日:C# 发布;Chrome OS 问世;《仙剑奇侠传》发行
上半年晋升 P8 成功,还买了别墅!
CPU与chiplet技术杂谈
Navigation - are you sure you want to take a look at such an easy-to-use navigation framework?
Multi merchant mall system function disassembly lecture 01 - Product Architecture
Substance painter notes: settings for multi display and multi-resolution displays
⼀个对象从加载到JVM,再到被GC清除,都经历了什么过程?
Cocoscreator resource encryption and decryption
2022 cloud consulting technology series high availability special sharing meeting
【愚公系列】2022年7月 Go教学课程 005-变量
Read PG in data warehouse in one article_ stat
What is the process of ⼀ objects from loading into JVM to being cleared by GC?
Webrtc audio anti weak network technology (Part 1)
Démontage de la fonction du système multi - Merchant Mall 01 - architecture du produit
找到自己的价值
Leetcode one question per day (636. exclusive time of functions)
Pytorch model trains practical skills and breaks through the bottleneck of speed
Spatiotemporal deformable convolution for compressed video quality enhancement (STDF)









