System Design And Availability Flashcards

1
Q

What is System Design?

A

The process of defining the architecture, components, modules, interfaces, and data flow of a system to satisfy specified requirements.

Crucial aspect of software engineering focusing on scalable, reliable, and maintainable systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

List the key aspects of System Design.

A
  • Scalability
  • Reliability
  • Maintainability
  • Performance
  • Security

Each aspect addresses specific requirements for building effective systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is Latency?

A

The time taken to process a single request or operation.

Measured in units of time such as milliseconds or microseconds.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is Throughput?

A

The number of requests or operations a system can handle in a given time period.

Measured in units like requests per second (RPS).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Fill in the blank: The goal of minimizing _______ is to achieve faster response times.

A

Latency

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Fill in the blank: The goal of maximizing _______ is to handle more load.

A

Throughput

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What does the CAP theorem state?

A

In any distributed system, it is impossible to simultaneously achieve Consistency, Availability, and Partition Tolerance.

Important for understanding trade-offs in distributed systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What does Consistency (C) mean in the CAP theorem?

A

Every read receives the most recent write or an error.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What does Availability (A) mean in the CAP theorem?

A

Every request receives a (non-error) response, even if some nodes are down.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What does Partition Tolerance (P) mean in the CAP theorem?

A

The system continues to function despite network partitions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are CP Systems?

A

Systems that prioritize consistency over availability during network partitions.

Example: Databases like HBase.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are AP Systems?

A

Systems that prioritize availability over consistency during network partitions.

Example: DNS, Cassandra.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the three consistency patterns?

A
  • Strong Consistency
  • Eventual Consistency
  • Weak Consistency

Each pattern addresses different needs for data accuracy and performance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is Strong Consistency?

A

Guarantees that all reads return the most recent write, achieved by synchronous replication.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is Eventual Consistency?

A

Guarantees that all nodes will eventually converge to the same state, given no new updates.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is Weak Consistency?

A

No guarantee that reads will return the most recent write; useful for performance-focused applications.

17
Q

What is Failover?

A

Automatically transferring operations to a standby system when the primary system fails.

18
Q

List the types of Failover.

A
  • Active-Passive
  • Active-Active

Each type describes different strategies for maintaining system operations.

19
Q

What is Replication?

A

Creating multiple copies of data across different nodes to ensure availability.

20
Q

List the types of Replication.

A
  • Master-Slave
  • Master-Master

Each type describes different strategies for data redundancy.

21
Q

What does 99.9% Availability mean?

A

The system is operational 99.9% of the time and allowed to be down 0.1% of the time.

22
Q

What does 99.99% Availability mean?

A

The system is operational 99.99% of the time, allowed to be down only 0.01% of the time.

23
Q

Fill in the blank: The downtime of a system with 99.9% availability equals about _______ per year.

A

8 hours and 45 minutes

24
Q

Fill in the blank: The downtime of a system with 99.99% availability equals about _______ per year.

A

52 minutes and 35 seconds

25
Q

What is the impact of parallel systems on availability?

A

Overall availability improves significantly because the system works as long as at least one component is operational.

26
Q

What is the impact of sequential systems on availability?

A

Overall availability decreases because a failure in any single component results in system downtime.

27
Q

What is the formula for parallel availability?

A

A = 1 - (1 - A1)(1 - A2)…

A represents the overall availability.

28
Q

What is the formula for sequential availability?

A

A = A1 * A2 * …

A represents the overall availability.