Foundational Distributed System Concepts - Scalability Flashcards

Understand core concepts (20 cards)

1
Q

What is vertical scaling?

A

Increasing the resources of a single server, such as CPU or RAM.

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

What is horizontal scaling?

A

Adding more servers to distribute the load.

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

When should vertical scaling be used?

A

When applications are not designed for distributed environments.

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

When should horizontal scaling be used?

A

When applications can be distributed across multiple servers.

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

What is load balancing?

A

Distributing incoming network traffic across multiple servers.

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

Name a load balancing strategy.

A

Round Robin

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

Name another load balancing strategy.

A

Least Connections

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

What are the pros of Round Robin load balancing?

A

Simple and effective for evenly distributed loads.

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

What are the cons of Round Robin load balancing?

A

Does not account for server capacity or current load.

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

What are the pros of Least Connections load balancing?

A

Directs traffic to the server with the least connections.

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

What are the cons of Least Connections load balancing?

A

Can be complex to implement and monitor.

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

What is sharding?

A

Dividing a database into smaller, more manageable pieces called shards.

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

What is partitioning in data management?

A

Splitting data into distinct segments for efficiency.

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

What is hashing in sharding?

A

Using a hash function to determine the shard for a given data entry.

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

What is consistent hashing?

A

A method that reduces the number of keys that need to be remapped when a shard is added or removed.

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

What is range-based sharding?

A

Dividing data into shards based on a specified range of values.

17
Q

What is directory-based sharding?

A

Using a lookup table to determine which shard contains a particular piece of data.

18
Q

What issues can arise with data distribution in sharding?

A

Hot spots and rebalancing challenges.

19
Q

What are hot spots in data distribution?

A

When one shard receives significantly more traffic than others.

20
Q

What is rebalancing in sharding?

A

Redistributing data across shards to ensure even load.