Distributed datastore Basics - Part 3

Commodity computers like normal desktop that we use at home.

Why you need to scale?
Performance is degraded as customers are complaining that requests are taking more time.

Vertical Scaling: 
Upgrade the server to handle volume of requests easily. Upgrading single server's capability much more. 

Horizontal Scaling:
  1. Add more machines to the cluster. 
  2. Cheaper than vertical scaling. 
  3. If service is not heavily used then more machines from the cluster. Service is not impacted since you are adding more machines to direct the traffic and removing the machines so requests are served by some or the other machine at any given point.
  4. We can store the machines in different continents. 
Conclusion:
  1. Vertical scaling is cost efficient in short term as you are buy less H/W. Horizontal scaling is cost efficient in long run. 
  2. Vertical scaling is not fault tolerant as its only one machine. 

Advantages of distributed systems: 
  1. Fault tolerance:
    1. If server in a country goes down then requests can be directed to another server in another country.
    2. User will see more latency but the service remains available. 
  2. Low Latency:
    1. You can place the server near to where most requests are originating in case of HS but in VS there is only few servers so users will wait for their response. 
    2. Time taken to send and receive the request will go down. Only time consumed will be the time taken by the service. 

No comments:

Post a Comment

NoSQL

This one is reviewed but I need to delete its copy from hubpages or somewhere NoSQL Data models: key-value  Aggregate model.  key or i...