当前位置:网站首页>Principle of universal gbase high availability synchronization tool in Nanjing University
Principle of universal gbase high availability synchronization tool in Nanjing University
2022-07-05 12:27:00 【yang881221】
Data synchronization is an essential role in distributed databases . It's used by Nantah gbse8a Database products , As a mature market product , Its data synchronization function is also very perfect , Whether in terms of function or performance , Are impeccable .
Here is a brief explanation gbase8a The principle of product data synchronization .
As we all know , Data synchronization is both functional and performance . That is, it should be fast and accurate .
If the synchronized data is wrong or lost, it is unintentionally a failure , Similarly, if the data synchronization is accurate , But every time I have to toss for a long time , This is also unbearable .
Get down to business ,gbase8a The data synchronization of the product adopts the working mode of pipeline , combination client-server The model works , Ensure concurrent processing , Ensure the accuracy of data verification during synchronization .
But piecemeal data parallelization
The above figure shows the data of the same table , Parallelization of different data slices . If the data of a table has 1g, It is divided into 3 Slice to 3 Each node , After parallelization , Time can be changed into the original 1/3
Multi slice data parallelization
Thread processing piple line Pattern
piple line Mode can make full use of the processing power of multithreading , For example, some threads read data , Some threads verify the read data , Some threads write the correct data or send the correct data .
Because each thread and the magnitude of calculation and processing may be different , such as check Faster ,read slower , This will cause some threads to be busy and others to be idle
Then you can use different number of threads according to the business volume
piple+multi pthd Pattern
work -group Pattern : In this mode, state machine management is required , But this can do the most with the least number of threads , But the disadvantage is that the thread context will switch frequently
The above is the current gbase The specific principle of synchronization . It makes full use of the idea of concurrency and multi-core .
Of course, it can be optimized later , such as perthd Pattern , Lockless queue mode ,RCU Queue processing . Or introduce a collaboration process for processing .
边栏推荐
- Which domestic cloud management platform manufacturer is good in 2022? Why?
- The survey shows that traditional data security tools cannot resist blackmail software attacks in 60% of cases
- SENT协议译码的深入探讨
- Solve the problem of cache and database double write data consistency
- Instance + source code = see through 128 traps
- Understand redis persistence mechanism in one article
- Video networkState 属性
- Hiengine: comparable to the local cloud native memory database engine
- Pytoch uses torchnet Classerrormeter in meter
- Redis's memory elimination mechanism, read this article is enough.
猜你喜欢
Automated test lifecycle
The evolution of mobile cross platform technology
A guide to threaded and asynchronous UI development in the "quick start fluent Development Series tutorials"
Learn memory management of JVM 01 - first memory
Pytorch two-layer loop to realize the segmentation of large pictures
What is digital existence? Digital transformation starts with digital existence
Anaconda creates a virtual environment and installs pytorch
Select drop-down box realizes three-level linkage of provinces and cities in China
Matlab superpixels function (2D super pixel over segmentation of image)
ABAP table lookup program
随机推荐
Xi IO flow
Take you two minutes to quickly master the route and navigation of flutter
Embedded software architecture design - message interaction
Experimental design - using stack to realize calculator
Codeforces Round #804 (Div. 2)
Implementing Yang Hui triangle with cyclic queue C language
信息服务器怎么恢复,服务器数据恢复怎么弄[通俗易懂]
End to end neural network
什么是数字化存在?数字化转型要先从数字化存在开始
Complete activity switching according to sliding
Learning items
Get data from the database when using JMeter for database assertion
Solution to order timeout unpaid
Seven ways to achieve vertical centering
Four operations and derivative operations of MATLAB polynomials
MySQL regular expression
PXE启动配置及原理
Detailed steps for upgrading window mysql5.5 to 5.7.36
Redis highly available slice cluster
Solve the problem of cache and database double write data consistency