# Read
+ **`Read Index`**
  + `Leader` broadcasts a heartbeat to verify the leadership
  + Wait untill committed logs are applied, then read the data locally
  + Can be used only when the latest commit log term is same as the term of the `Raft` 
+ **`Lease Read`**
  + Lease can ensure that no one will campaign in given time as lease time is always less than election timeout
    + Clock drift? Lease dudation has enough buffer to offset it
    + Network partition? `Follower` will wait the election timeout before the new election
  + Read locally if the lease is not expired
  + Wait till logs applied when leadership changes
+ **`Follower Read`**
  + Follower asks `leader` to return the committed index and then wait until it's applied
---------------------------------------------------------------------------------------

