From 75a021284d5258d81a135b25355eb126dcc39d99 Mon Sep 17 00:00:00 2001 From: YangKeao Date: Tue, 28 Apr 2020 05:13:04 +0000 Subject: [PATCH] Add doc for project3 part C (#153) --- courses/imgs/balance1.png | Bin 0 -> 63462 bytes courses/imgs/balance2.png | Bin 0 -> 69178 bytes courses/project3-MultiRaftKV.md | 87 ++++++++++++++++++++++++++++++++ 3 files changed, 87 insertions(+) create mode 100644 courses/imgs/balance1.png create mode 100644 courses/imgs/balance2.png diff --git a/courses/imgs/balance1.png b/courses/imgs/balance1.png new file mode 100644 index 0000000000000000000000000000000000000000..4022dd108d1de569dff09fb3d594d27930a538d3 GIT binary patch literal 63462 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%0DSdegR+Q%0Y~v3x6&JE_A8NPmZij?y-4Cx{ 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 CaOU#> literal 0 HcmV?d00001 diff --git a/courses/imgs/balance2.png b/courses/imgs/balance2.png new file mode 100644 index 0000000000000000000000000000000000000000..1df92526ad3b1af43569aadc3ed4a0747a3d0e13 GIT binary patch literal 69178 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 literal 0 HcmV?d00001 diff --git a/courses/project3-MultiRaftKV.md b/courses/project3-MultiRaftKV.md index a3d53e47..c6323d37 100644 --- a/courses/project3-MultiRaftKV.md +++ b/courses/project3-MultiRaftKV.md @@ -103,3 +103,90 @@ So your task is to implement the process of handling split admin command, just l > - For the case region split with network isolation, the snapshot to be applied may have overlap with the existing region’s range. The check logic is in `checkSnapshot()` in `kv/raftstore/peer_msg_handler.go`. Please keep it in mind when implementing and take care of that case. > - Use `engine_util.ExceedEndKey()` to compare with region’s end key. Because when the end key equals “”, any key will equal or greater than “”. > - There are more errors need to be considered: `ErrRegionNotFound`, `ErrKeyNotInRegion`, `ErrEpochNotMatch`. + +### Part C + +As we have instructed above, all data in our kv store is split into several regions, and every region contains multiple replicas. A problem emerged: where should we place every replica? and how can we find the best place for a replica? Who sends former AddPeer and RemovePeer commands? The Scheduler takes on this responsibility. + +In order to make informed decisions, the Scheduler should have some information about the whole cluster. It should know where every region is. It should know how many keys they have. It should know how big they are… To get related information, the Scheduler requires that every region should send a heartbeat request to the Scheduler periodically. You can find the heartbeat request structure `RegionHeartbeatRequest` in `/proto/proto/pdpb.proto`. After receiving a heartbeat, the scheduler will update local region information. + +Meanwhile, the Scheduler checks region information periodically to find whether there is an imbalance in our TinyKV cluster. For example, if any store contains too many regions, regions should be moved to other stores from it. These commands will be picked up as the response for corresponding regions’ heartbeat requests. + +In this part, you will need to implement the above two functions for Scheduler. Follow our guide and framework, and it won’t be too difficult. + +#### The Code + +The code you need to modify is all about `scheduler/server/cluster.go` and `scheduler/server/schedulers/balance_region.go`. As described above, when the Scheduler received a region heartbeat, it will update its local region information first. Then it will check whether there are pending commands for this region. If there is, it will be sent back as the response. + +You only need to implement `processRegionHeartbeat` function, in which the Scheduler updates local information; and `Schedule` function for balance-region scheduler, in which the Scheduler scans stores and determines whether there is an imbalance and which region it should move. + +#### Collect region heartbeat + +As you can see, the only argument of `processRegionHeartbeat` function is a regionInfo. It contains information about the sender region of this heartbeat. What the Scheduler needs to do is just to update local region records. But should it update these records for every heartbeat? + +Definitely not! There are two reasons. One is that updates could be skipped when no changes have been made for this region. The more important one is that the Scheduler cannot trust every heartbeat. Particularly speaking, if the cluster has partitions in a certain section, the information about some nodes might be wrong. + +For example, some Regions re-initiate elections and splits after they are split, but another isolated batch of nodes still sends the obsolete information to Scheduler through heartbeats. So for one Region, either of two nodes might say that it's the leader, which means the Scheduler cannot trust them both. + +Which one is more credible? The Scheduler should use `conf_ver` and `version` to determine it, namely `RegionEpcoh`. The Scheduler should first compare the values of the Region version of two nodes. If the values are the same, the Scheduler compares the values of the configuration change version. The node with a larger configuration change version must have newer information. + +Simply speaking, you could organize the check routine in below way: + +1. Check whether there is a region with the same Id in local storage. If there is and at least one of the heartbeats’ `conf_ver` and `version` are less than its, this heartbeat region is stale + +2. If there isn’t, scan all regions that overlap with it. The heartbeats’ `conf_ver` and `version` should be greater or equal than all of them, or the region is stale. + +Then how the Scheduler determines whether it could skip this update? We can list some simple conditions: + +* If the new one’s `version` or `conf_ver` is greater than the original one, it cannot be skipped + +* If the leader changed, it cannot be skipped + +* If the new one or original one has pending peer, it cannot be skipped + +* If the ApproximateSize changed, it cannot be skipped + +* … + +Don’t worry. You don’t need to find a strict sufficient and necessary condition. Redundant updates won’t affect correctness. + +If the Scheduler determines to update local storage according to this heartbeat, there are two things it should update: region tree and store status. You could use `RaftCluster.core.PutRegion` to update the region tree and use `RaftCluster.core.UpdateStoreStatus` to update related store’s status (such as leader count, region count, pending peer count… ). + +#### Implement region balance scheduler + +There can be many different types of schedulers running in the Scheduler, for example, balance-region scheduler and balance-leader scheduler. This learning material will focus on the balance-region scheduler. + +Every schedulers should have implemented Scheduler interface, which you can find in `/scheduler/server/schedule/scheduler.go`. The Scheduler will use the return value of `GetMinInterval` as default interval to run `Schedule` method periodically. If it returns null (with several times retry), the Scheduler will use `GetNextInterval` to increase the interval. By defining `GetNextInterval` you can define how the interval increases. If it returns an operator, the Scheduler will dispatch these operators as the response of the next heartbeat of the related region. + +The core part of the Scheduler interface is `Schedule` method. The return value of this method is `Operator`, which contains multiple steps such as `AddPeer` and `RemovePeer`. For example, `MovePeer` may contain `AddPeer`, `transferLeader` and `RemovePeer` which you have implemented in former part. Take the first RaftGroup in the diagram below as an example. The scheduler tries to move peer from the third store to the forth. First, it should `AddPeer` for the forth store. Then it checks whether the third is a leader, and find that no, it isn’t, so there is no need to `transferLeader`. Then it removes the peer in the third store. + +You can use the `CreateMovePeerOperator` function in `scheduler/server/schedule/operator` package to create a `MovePeer` operator. + +![multiraft](imgs/balance1.png) + +![multiraft](imgs/balance2.png) + +In this part, the only function you need to implement is the `Schedule` method in `scheduler/server/schedulers/balance_region.go`. This scheduler avoids too many regions in one store. First, the Scheduler will select all suitable stores. Then sort them according to their region size. Then the Scheduler tries to find regions to move from the store with the biggest region size. + +The scheduler will try to find the region most suitable for moving in the store. First it will try to select a pending region because pending may mean the disk is overloaded. If there isn’t a pending region, it will try to find a follower region. If it still cannot pick out one region, it will try to pick leader regions. Finally it will select out the region to move, or the Scheduler will try the next store which has smaller region size until all stores will have been tried. + +After you pick up one region to move, the Scheduler will select a store as the target. Actually, the Scheduler will select the store with the smallest region size. Then the Scheduler will judge whether this movement is valuable, by checking the difference between region sizes of the original store and the target store. If the difference is big enough, the Scheduler should allocate a new peer on the target store and create a move peer operator. + +As you might have noticed, the routine above is just a rough process. A lot of problems are left: + +* Which stores are suitable to move? + +In short, a suitable store should be up and the down time cannot be longer than `MaxStoreDownTime` of the cluster, which you can get through `cluster.GetMaxStoreDownTime()`. + +* How to select regions? + +The Scheduler framework provides three methods to get regions. `GetPendingRegionsWithLock`, `GetFollowersWithLock` and `GetLeadersWithLock`. The Scheduler can get related regions from them. And then you can select a random region. + +* How to judge whether this operation is valuable? + +If the difference between the original and target stores’ region sizes are too small, after we move the region from original store to target store, the Scheduler may want to move back again next time. So we have to make sure that the difference has to be bigger than two times of the approximate size of the region, which ensures that after moving, the target store’s region size is still smaller than the original store. + +reference: + +- +- \ No newline at end of file