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
What is the impact of parallel systems on availability?
Overall availability improves significantly because the system works as long as at least one component is operational.
26
What is the impact of sequential systems on availability?
Overall availability decreases because a failure in any single component results in system downtime.
27
What is the formula for parallel availability?
A = 1 - (1 - A1)(1 - A2)... ## Footnote A represents the overall availability.
28
What is the formula for sequential availability?
A = A1 * A2 * ... ## Footnote A represents the overall availability.