Key points and key points of Distributed Systems
Key Points of Distributed Systems
A distributed system is a software system built on a network. It is precisely because of the characteristics of software that distributed systems have a high degree of cohesion and transparency. Therefore, the difference between networks and distributed systems lies more in high-level software (especially Operating Systems) than hardware. Cohesion means that each database distribution node is highly autonomous and has a local database management system. Transparency means that each database distribution node is transparent to the user's applications. It cannot be seen whether it is local or remote. In a distributed database system, the user does not feel that the data is distributed, that is, the user does not need to know whether the relationship is split, whether there are copies, where the data is stored, and where the transaction is executed.
1. Distributed System Computing Node Distribution and computing node consistency Algorithms
1. Currently, 15 nodes are distributed, and the computing task distribution is as follows:
Computing task ID |
2i-1 |
(+ Node number) task allocation Node |
1 |
1 |
2 |
2 |
2 |
3 |
3 |
4 |
5 |
4 |
8 |
9 |
That is, the task number on computing node 1 is 2, 3, 5, 9, and so on.
2. When no computing node exists in the distributed node or the computing node for task allocation fails, find the nearest computing node. For example, when 20 computing tasks are assigned to 18 settlement nodes
3. When a new node is added to a distributed computing node, the computing tasks of each node are re-allocated.
After adding 28 computing nodes, the computing points 2 and 20 are re-computed first. After entering the new computing node, the adjacent nodes on the 1 network are propagated to find the computing node.
Ii. consistency problems in Distributed Systems
1. Order consistency
After P1 is written to the x value, each compute node should not be traceable after reading the x value.
2. Causal consistency
After the p1 computing node is continuously written to x, the p2 computing node performs operations on x, while other computing nodes may have different read operations on x, but the inconsistency should be sequential consistency.
3. Customer consistency
The ultimate goal of maintaining computing node consistency is to achieve system customer consistency. Shanghai customers traveled to Xi'an and read the Xi'an node email list to show only the latest emails, however, the latest mail must be consistent with the Shanghai computing node, and historical data is loaded asynchronously.
4. interface consistency
There is no big difference in user experience between IOS and android, and the interface is consistent.
5. Data Consistency
Iii. Data Consistency
1. monotonous reading
2. monotonous writing
3. consistent read/write
4. Sequential read/write