Sunday, September 2, 2018

How would you ensure High availability of databases


Q.) High availability of databases

High available databases uses an architecture that continues to function normally even when there are hardware or software failures within the system.

They are different from traditional rdbms which are built on single server and are built on master/replica architecture to provide availability.

In the master/replica model, only the master is available for data updates, unless it fails, at which time a new replica takes over as master.

Another approach is that of masterless architecture that uses clustering, where a group of servers get combined, and any server can respond to read or write requests. Data is then replicated across all servers in the cluster, providing system redundancy and minimizing the possibility of downtime.

CAP Theorem: - Dr Eric Brewer
It is impossible for a distributed system to provide simultaneously:
Consistency: multiple values for the same piece of data do not occur

Availability: Operates fully

Partition Tolerant: Responds correctly to node and/or network failure

Configure RDS for high availability
1. Make it multi-AZ
2. failover instance, usually takes 60 - 120 sec.


Q.)How do you ensure uptime of your DB

1. Practise routine maintenance

2. Use management and monitoring tools

3. Make the systems more secure

4. Quality hardware

5. Plan carefully

6. Competent staff

7. Follow change management process

8. Estimating server capacity limits correctly

9. Redundancy of equipments - horizontal scaling



No comments:

Post a Comment

My GutHub basics and cheat sheat

used for Source control management (SCM). Following are the few things you need to know: 1. cloning - pulling down the copy of the sour...