Apache Kafka Flashcards

1
Q

What is apache kafka?

A

Apache Kafka is an open-source distributed event streaming platform (Kafka is a distributed pub-sub messaging system that keeps track of streams of events)

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

Why do we need Kafka?

A

Allows us to have a single source of events ( someones sends events, someone subscribes to these events). That’s allow not to build relations between each services directly.

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

Where we can use Kafka? For what cases?

A
  • messaging system ( communication between microservices )
  • gather metrics
  • Logs gathering
  • De-coupling of system dependency
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is kafka producer? What is acknowledgment?

A

Producer writes data to topic. There 3 types of acknowledgment
0 -> Don’t check if data was written to broker
1 -> Ensure that data was written to the leader broker
2 -> Ensure that data was written to the leader broker and all replicas

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

What is kafka consumer? How to send a message?

A

Consumer reads data from the topic.

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

What is Zookeper?

A

Zookeper maganages brokers and helps to find the leader.

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

What is kafka topic? partition? offset?

A

A particular stream of data ( Similar to the table in DB)

Each topic contains partition ( similar to db row ), Each partition contains offset ( id )

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

What is kafka broker?

A

Something like servers to handle kafka partitions.

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

What is topic replication factor?

A

Is a number which describe how many copies of partition we need to send to different brokers. ( To avoid losing data )

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