SlideShare a Scribd company logo
A. Sophie Blee-Goldman, Guozhang Wang
Bay Area Kafka Meetup, Dec. 5, 2019
The Silver Bullet for Endless Rebalances
Introduction to the Incremental Cooperative Protocol
Outline
• Review of the current eager rebalance algorithm
• Identify the known issues with common scenarios
• A new proposal: incremental cooperative rebalancing
2
3
A Short History of Consumer Groups
Topic 1
Topic 2
Partitions
Producers
Producers
Consumers
Consumers
Brokers
4
A Short History of Consumer Groups
Consumers
Consumers
fetch
fetch
1) assignment (who owns what)
2) offset (consumed up to where)
Kafka 0.8.2-
5
A Short History of Consumer Groups
Consumers
Consumers
fetch
fetch
1) assignment (who owns what)
2) offset (consumed up to where)
Kafka 0.9.0+
Group Coordinator
5
A Short History of Consumer Groups
Consumers
Consumers
fetch
fetch
1) assignment (who owns what)
2) offset (consumed up to where)
Kafka 0.9.0+
Group Coordinator
6
Consumer Rebalance Protocol
• A rebalance happens when:
• Membership change

• Member crash: failure of a consumer

• Scaling in: member leaves the group

• Scaling out: new member joins
• Partition resources change
• Topics are created or deleted

• More partitions added to topics
7
Member Crash: Failure Detection (heartbeat)
C1
C2
Group Coordinator (broker side)
7
Member Crash: Failure Detection (heartbeat)
C1
C2
Group Coordinator (broker side)
heartbeat
ok
7
Member Crash: Failure Detection (heartbeat)
C1
C2
Group Coordinator (broker side)
heartbeat heartbeat
ok ok
8
Member Crash: Failure Detection (heartbeat)
C1
C2
Group Coordinator (broker side)
heartbeat
ok
8
Member Crash: Failure Detection (heartbeat)
C1
C2
Group Coordinator (broker side)
heartbeat
ok
8
Member Crash: Failure Detection (heartbeat)
C1
C2
Group Coordinator (broker side)
heartbeat
ok
8
Member Crash: Failure Detection (heartbeat)
C1
C2
Group Coordinator (broker side)
heartbeat
ok
8
Member Crash: Failure Detection (heartbeat)
C1
C2
Group Coordinator (broker side)
session.timeout.ms
heartbeat
ok
9
Scaling In: Consumer Shutdown (leave-group)
C1
C2
Group Coordinator (broker side)
heartbeat
ok
9
Scaling In: Consumer Shutdown (leave-group)
C1
C2
Group Coordinator (broker side)
heartbeat leave-group
ok
9
Scaling In: Consumer Shutdown (leave-group)
C1
C2
Group Coordinator (broker side)
heartbeat leave-group
ok
10
Scaling Out: Consumer Startup (join-group)
C1
C2
Group Coordinator (broker side)
10
Scaling Out: Consumer Startup (join-group)
C1
C2
Group Coordinator (broker side)
C3
10
Scaling Out: Consumer Startup (join-group)
C1
C2
Group Coordinator (broker side)
C3
join-group
10
Scaling Out: Consumer Startup (join-group)
C1
C2
Group Coordinator (broker side)
C3
join-group
11
Resources Change: Re-Subscribe (join-group)
C1
C2
Group Coordinator (broker side)
C3
join-group
11
Resources Change: Re-Subscribe (join-group)
C1
C2
Group Coordinator (broker side)
C3
join-group
consumer resubscribe
11
Resources Change: Re-Subscribe (join-group)
C1
C2
Group Coordinator (broker side)
C3
join-group join-group
consumer resubscribe
11
Resources Change: Re-Subscribe (join-group)
C1
C2
Group Coordinator (broker side)
C3
join-group join-group
consumer resubscribe
12
Consumer Rebalance Protocol
• During the rebalance:
• Existing consumers re-join the group
• A single member is chosen as group leader
• leader determines partition assignment (user customizable)
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
1 2 3
4 5 6
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
1 2 3
4 5 6
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
join-group
1 2 3
4 5 6
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
join-group
1 2 3
4 5 6
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
1 2 3
4 5 6
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
1 2 3
4 5 6
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)1 2 3
4 5 6
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
sync. barrier
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
13
Consumers Re-join Group
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
rebalance.timeout.ms
sync. barrier
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
sync-group
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#assign(…)
sync-group
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#assign(…)
sync-group
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#assign(…)
sync-group
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#assign(…)
sync-group
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#assign(…)
sync-group
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#assign(…)
sync-group
#onPartitionsAssigned(1,2)

#onPartitionsAssigned(4,5)

#onPartitionsAssigned(3,6)
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#assign(…)
sync-group
#onPartitionsAssigned(1,2)

#onPartitionsAssigned(4,5)

#onPartitionsAssigned(3,6)
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
1 2
4 5
3 6
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
14
Partition Reassignment (sync-group)
re-join
join-group
select C1 as leader
#assign(…)
sync-group
#onPartitionsAssigned(1,2)

#onPartitionsAssigned(4,5)

#onPartitionsAssigned(3,6)
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
1 2
4 5
3 6
#onPartitionsRevoked(1,2,3)

#onPartitionsRevoked(4,5,6)
15
Summary of Rebalance Protocol
• ConsumerRebalanceListener
• #onPartitionsRevoked (before sending join-group)

• #onPartitionsAssigned (after receiving sync-group)
• ConsumerPartitionAssignor
• #assign (only triggered by the leader)
Built-in: {range, round-robin, sticky}; Custom: {streams, …}
16
Known Issue #1: Stop-the-world Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions) #assign(…)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
1 2 3
4 5 6
1 2
4 5
3 6
16
Known Issue #1: Stop-the-world Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions) #assign(…)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
revoked all
1 2 3
4 5 6
1 2
4 5
3 6
16
Known Issue #1: Stop-the-world Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions) #assign(…)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
revoked all re-assigned most
1 2 3
4 5 6
1 2
4 5
3 6
16
Known Issue #1: Stop-the-world Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions) #assign(…)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
revoked all re-assigned most
eager rebalance:
before rebalance revoked all the partitions,
after rebalance most of the partitions are reassigned back
1 2 3
4 5 6
1 2
4 5
3 6
17
Known Issue #2: Back-and-forth Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
leave-group
#assign(…) #onPartitionsRevoked(all partitions) #assign(…)
1 2
4 5
3 6
1 2
4 5
3 6
17
Known Issue #2: Back-and-forth Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
leave-group
#assign(…) #onPartitionsRevoked(all partitions) #assign(…)
1 2
4 5
3 6
1 2
4 5
3 6
17
Known Issue #2: Back-and-forth Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
leave-group
#assign(…) #onPartitionsRevoked(all partitions) #assign(…)
1 2
4 5
3 6
1 2
4 5
3 6
17
Known Issue #2: Back-and-forth Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
leave-group
#assign(…) #onPartitionsRevoked(all partitions) #assign(…)
bounce a consumer
1 2
4 5
3 6
1 2
4 5
3 6
17
Known Issue #2: Back-and-forth Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
leave-group
#assign(…) #onPartitionsRevoked(all partitions) #assign(…)
bounce a consumer
1 2
4 5
3 6
1 2
4 5
3 6
17
Known Issue #2: Back-and-forth Rebalance
join-group
re-
join-group
#onPartitionsRevoked(all partitions)
sync-
#onPartitionsAssigned(given partitions)
re-join
sync-group
C1
C2
Group Coordinator(broker side)
C3
leave-group
#assign(…) #onPartitionsRevoked(all partitions) #assign(…)
unnecessary rebalances: 



first one to move partitions from C3 to C1/C2,

second one to move them back to C3 from C1/C2
bounce a consumer
1 2
4 5
3 6
1 2
4 5
3 6
18
Let’s Revisit: 



When to trigger a rebalance, 


Who to participate in a rebalance, 


What to reassign during rebalance
19
Rebalance Protocols
When Who What
Current Protocol
(Eager)
Immediately Everyone Everything
20
When Who What
Current Protocol
(Eager)
Immediately Everyone Everything
Proposed Protocol
(Cooperative)
After determining what
needs to be reassigned
Only those whose
assignment will be
changed
Only those partitions
who change ownership
Rebalance Protocols
21
Rebalance Protocols
• [KIP-415] : incremental rebalance in Connect(2.3+)

• [KIP-345] : static membership in Consumer / Streams(2.3+)

• [KIP-429] : incremental rebalance in Consumer / Streams(2.4+)
21
Rebalance Protocols
• [KIP-415] : incremental rebalance in Connect(2.3+)

• [KIP-345] : static membership in Consumer / Streams(2.3+)

• [KIP-429] : incremental rebalance in Consumer / Streams(2.4+)
22
Incremental Assignment in the Consumer
22
Incremental Assignment in the Consumer
owned-partitions
22
Incremental Assignment in the Consumer
owned-partitions assigned-partitions
22
Incremental Assignment in the Consumer
owned-partitions assigned-partitions
unchanged-partitions
22
Incremental Assignment in the Consumer
owned-partitions assigned-partitions
partitions-to-be-revoked
unchanged-partitions
22
Incremental Assignment in the Consumer
owned-partitions assigned-partitions
partitions-to-be-revoked
unchanged-partitions
#onPartitionsRevoked
22
Incremental Assignment in the Consumer
owned-partitions assigned-partitions
partitions-to-be-revoked partitions-to-be-added
unchanged-partitions
#onPartitionsRevoked
22
Incremental Assignment in the Consumer
owned-partitions assigned-partitions
partitions-to-be-revoked partitions-to-be-added
unchanged-partitions
#onPartitionsRevoked #onPartitionsAssigned
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
1 2 3
4 5 6
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
1 2 3
4 5 6
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
1 2 3
4 5 6
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: { }
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
1 2 3
4 5 6
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: { }
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
1 2 3
4 5 6
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: { }
#assign(…)
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: {3*, 6*} -> { }
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
1 2 3
4 5 6
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: { }
sync-group
#assign(…)
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: {3*, 6*} -> { }
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
1 2 3
4 5 6
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: { }
sync-group
#assign(…)
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: {3*, 6*} -> { }
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
1 2 3
4 5 6
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: { }
sync-group
#assign(…)
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: {3*, 6*} -> { }
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
1 2
4 5
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: { }
sync-group
#assign(…)
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: {3*, 6*} -> { }
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
23
Cooperative Protocol
C1
C2
Group Coordinator (broker side)
C3
join-group
re-join
join-group
1 2
4 5
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: { }
sync-group
#assign(…)
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: {3*, 6*} -> { }
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
24
Cooperative Protocol
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
1 2
4 5
C1
C2
C3
24
Cooperative Protocol
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
1 2
4 5
C1
C2
C3
24
Cooperative Protocol
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
1 2
4 5
C1
C2
C3
24
Cooperative Protocol
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
#assign(…)
1 2
4 5
C1
C2
C3
24
Cooperative Protocol
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
#assign(…)
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}1 2
4 5
C1
C2
C3
24
Cooperative Protocol
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
sync-group
#assign(…)
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}1 2
4 5
C1
C2
C3
24
Cooperative Protocol
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
sync-group
#assign(…)
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}1 2
4 5
C1
C2
C3
24
Cooperative Protocol
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
sync-group
#assign(…)
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
#onPartitionsAssigned(3,6)
1 2
4 5
3 6
C1
C2
C3
24
Cooperative Protocol
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2}
C2: {4, 5}
C3: { }
sync-group
#assign(…)
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
#onPartitionsAssigned(3,6)
1 2
4 5
3 6
C1
C2
C3
25
Cooperative Rebalance
C1
C2
C3
join-group
re-
join-group
1 2 3
4 5 6
C1: {1, 2, 3} C2: {4, 5, 6}
sync-group
#assign(…)
C1: {1, 2, 3}
C2: {4, 5, 6}
C3: {3*, 6*} -> {}
#onPartitionsRevoked(3)

#onPartitionsRevoked(6)
join-group
C1: {1, 2} C2: {4, 5}
sync-group
#assign(…)
C1: {1, 2}
C2: {4, 5}
C3: {3, 6}
#onPartitionsAssigned(3,6)
1 2
4 5
3 6
Group Coordinator (broker side)
• Trade-off: more rebalances, but way cheaper
• Works better with a “sticky” assignor: fewer partitions to migrate
• Consumers can continue to fetch during a rebalance event (2.5+)
26
Benchmark Results
• 10 streams instances rolling bounce, measuring process rate
• …and pause time: 3522 ms v.s. 37138 ms
26
Benchmark Results
• 10 streams instances rolling bounce, measuring process rate
• …and pause time: 3522 ms v.s. 37138 ms
26
Benchmark Results
• 10 streams instances rolling bounce, measuring process rate
• …and pause time: 3522 ms v.s. 37138 ms
27
Augmented Assignor Interface
ConsumerPartitionAssignor
• #assign (subscription now includes “owned-partitions”)
• #supportedProtocols (eager and/or cooperative)
Built-in: {range, round-robin, sticky : eager};



{sticky-cooperative : cooperative}



Custom: {streams, … : eager and cooperative}
28
Augmented Listener Interface
ConsumerRebalanceListener
• #onPartitionsRevoked (will not be triggered if there is nothing to revoke)

• #onPartitionsAssigned (triggered at completion of rebalance, regardless of newly added partitions)
• # #onPartitionsLost (triggered instead of onPartitionRevoked when a member falls out of group)
29
Switch to Cooperative Rebalancing
In Consumer
• first rolling bounce: add “sticky-cooperative” / “my-cooperative” to [partition.assignment.strategy]
• second rolling bounce: remove old assignor (e.g.,“range”) from the config
In Streams
• first rolling bounce: set [upgrade.from = old version (“2.3”)]
• second rolling bounce: remove [upgrade.from] config
Take-aways
• We have extended the rebalance protocol to enable
smarter assignment (when, who, and what)
30
Take-aways
• We have extended the rebalance protocol to enable
smarter assignment (when, who, and what)
• No more stop-the-world rebalances with the incremental
cooperative protocol!
31
THANKS!
Guozhang Wang | guozhang@confluent.io | @guozhangwang
32
A. Sophie Blee-Goldman | sophie@confluent.io | @ableegoldman

More Related Content

What's hot

A Deep Dive into Kafka Controller
A Deep Dive into Kafka ControllerA Deep Dive into Kafka Controller
A Deep Dive into Kafka Controller
confluent
 
Kafka replication apachecon_2013
Kafka replication apachecon_2013Kafka replication apachecon_2013
Kafka replication apachecon_2013Jun Rao
 
Running Kafka On Kubernetes With Strimzi For Real-Time Streaming Applications
Running Kafka On Kubernetes With Strimzi For Real-Time Streaming ApplicationsRunning Kafka On Kubernetes With Strimzi For Real-Time Streaming Applications
Running Kafka On Kubernetes With Strimzi For Real-Time Streaming Applications
Lightbend
 
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureServerless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Kai Wähner
 
Kafka 101
Kafka 101Kafka 101
Kafka 101
Clement Demonchy
 
Autoscaling Flink with Reactive Mode
Autoscaling Flink with Reactive ModeAutoscaling Flink with Reactive Mode
Autoscaling Flink with Reactive Mode
Flink Forward
 
Everything You Always Wanted to Know About Kafka's Rebalance Protocol but Wer...
Everything You Always Wanted to Know About Kafka's Rebalance Protocol but Wer...Everything You Always Wanted to Know About Kafka's Rebalance Protocol but Wer...
Everything You Always Wanted to Know About Kafka's Rebalance Protocol but Wer...
confluent
 
Delta from a Data Engineer's Perspective
Delta from a Data Engineer's PerspectiveDelta from a Data Engineer's Perspective
Delta from a Data Engineer's Perspective
Databricks
 
Netflix: From Zero to Production-Ready in Minutes (QCon 2017)
Netflix: From Zero to Production-Ready in Minutes (QCon 2017)Netflix: From Zero to Production-Ready in Minutes (QCon 2017)
Netflix: From Zero to Production-Ready in Minutes (QCon 2017)
Tim Bozarth
 
Apache Kafka from 0.7 to 1.0, History and Lesson Learned
Apache Kafka from 0.7 to 1.0, History and Lesson LearnedApache Kafka from 0.7 to 1.0, History and Lesson Learned
Apache Kafka from 0.7 to 1.0, History and Lesson Learned
Guozhang Wang
 
Introduction to Kafka Streams
Introduction to Kafka StreamsIntroduction to Kafka Streams
Introduction to Kafka Streams
Guozhang Wang
 
Apache Kafka - Overview
Apache Kafka - OverviewApache Kafka - Overview
Apache Kafka - Overview
CodeOps Technologies LLP
 
Introduction to Kafka Cruise Control
Introduction to Kafka Cruise ControlIntroduction to Kafka Cruise Control
Introduction to Kafka Cruise Control
Jiangjie Qin
 
Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)
Kai Wähner
 
Kafka Streams: What it is, and how to use it?
Kafka Streams: What it is, and how to use it?Kafka Streams: What it is, and how to use it?
Kafka Streams: What it is, and how to use it?
confluent
 
Cruise Control: Effortless management of Kafka clusters
Cruise Control: Effortless management of Kafka clustersCruise Control: Effortless management of Kafka clusters
Cruise Control: Effortless management of Kafka clusters
Prateek Maheshwari
 
Handle Large Messages In Apache Kafka
Handle Large Messages In Apache KafkaHandle Large Messages In Apache Kafka
Handle Large Messages In Apache Kafka
Jiangjie Qin
 
Apache Kafka Best Practices
Apache Kafka Best PracticesApache Kafka Best Practices
Apache Kafka Best Practices
DataWorks Summit/Hadoop Summit
 
Flexible and Real-Time Stream Processing with Apache Flink
Flexible and Real-Time Stream Processing with Apache FlinkFlexible and Real-Time Stream Processing with Apache Flink
Flexible and Real-Time Stream Processing with Apache Flink
DataWorks Summit
 
Apache Kafka Fundamentals for Architects, Admins and Developers
Apache Kafka Fundamentals for Architects, Admins and DevelopersApache Kafka Fundamentals for Architects, Admins and Developers
Apache Kafka Fundamentals for Architects, Admins and Developers
confluent
 

What's hot (20)

A Deep Dive into Kafka Controller
A Deep Dive into Kafka ControllerA Deep Dive into Kafka Controller
A Deep Dive into Kafka Controller
 
Kafka replication apachecon_2013
Kafka replication apachecon_2013Kafka replication apachecon_2013
Kafka replication apachecon_2013
 
Running Kafka On Kubernetes With Strimzi For Real-Time Streaming Applications
Running Kafka On Kubernetes With Strimzi For Real-Time Streaming ApplicationsRunning Kafka On Kubernetes With Strimzi For Real-Time Streaming Applications
Running Kafka On Kubernetes With Strimzi For Real-Time Streaming Applications
 
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse ArchitectureServerless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
Serverless Kafka and Spark in a Multi-Cloud Lakehouse Architecture
 
Kafka 101
Kafka 101Kafka 101
Kafka 101
 
Autoscaling Flink with Reactive Mode
Autoscaling Flink with Reactive ModeAutoscaling Flink with Reactive Mode
Autoscaling Flink with Reactive Mode
 
Everything You Always Wanted to Know About Kafka's Rebalance Protocol but Wer...
Everything You Always Wanted to Know About Kafka's Rebalance Protocol but Wer...Everything You Always Wanted to Know About Kafka's Rebalance Protocol but Wer...
Everything You Always Wanted to Know About Kafka's Rebalance Protocol but Wer...
 
Delta from a Data Engineer's Perspective
Delta from a Data Engineer's PerspectiveDelta from a Data Engineer's Perspective
Delta from a Data Engineer's Perspective
 
Netflix: From Zero to Production-Ready in Minutes (QCon 2017)
Netflix: From Zero to Production-Ready in Minutes (QCon 2017)Netflix: From Zero to Production-Ready in Minutes (QCon 2017)
Netflix: From Zero to Production-Ready in Minutes (QCon 2017)
 
Apache Kafka from 0.7 to 1.0, History and Lesson Learned
Apache Kafka from 0.7 to 1.0, History and Lesson LearnedApache Kafka from 0.7 to 1.0, History and Lesson Learned
Apache Kafka from 0.7 to 1.0, History and Lesson Learned
 
Introduction to Kafka Streams
Introduction to Kafka StreamsIntroduction to Kafka Streams
Introduction to Kafka Streams
 
Apache Kafka - Overview
Apache Kafka - OverviewApache Kafka - Overview
Apache Kafka - Overview
 
Introduction to Kafka Cruise Control
Introduction to Kafka Cruise ControlIntroduction to Kafka Cruise Control
Introduction to Kafka Cruise Control
 
Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)Kafka Connect and Streams (Concepts, Architecture, Features)
Kafka Connect and Streams (Concepts, Architecture, Features)
 
Kafka Streams: What it is, and how to use it?
Kafka Streams: What it is, and how to use it?Kafka Streams: What it is, and how to use it?
Kafka Streams: What it is, and how to use it?
 
Cruise Control: Effortless management of Kafka clusters
Cruise Control: Effortless management of Kafka clustersCruise Control: Effortless management of Kafka clusters
Cruise Control: Effortless management of Kafka clusters
 
Handle Large Messages In Apache Kafka
Handle Large Messages In Apache KafkaHandle Large Messages In Apache Kafka
Handle Large Messages In Apache Kafka
 
Apache Kafka Best Practices
Apache Kafka Best PracticesApache Kafka Best Practices
Apache Kafka Best Practices
 
Flexible and Real-Time Stream Processing with Apache Flink
Flexible and Real-Time Stream Processing with Apache FlinkFlexible and Real-Time Stream Processing with Apache Flink
Flexible and Real-Time Stream Processing with Apache Flink
 
Apache Kafka Fundamentals for Architects, Admins and Developers
Apache Kafka Fundamentals for Architects, Admins and DevelopersApache Kafka Fundamentals for Architects, Admins and Developers
Apache Kafka Fundamentals for Architects, Admins and Developers
 

Similar to The Silver Bullet for Endless Rebalancing

The Next Generation of the Consumer Rebalance Protocol with David Jacot
The Next Generation of the Consumer Rebalance Protocol with David JacotThe Next Generation of the Consumer Rebalance Protocol with David Jacot
The Next Generation of the Consumer Rebalance Protocol with David Jacot
HostedbyConfluent
 
Getting to Ready Unhiding Work with a Backlog Refinement Board
Getting to Ready Unhiding Work with a Backlog Refinement BoardGetting to Ready Unhiding Work with a Backlog Refinement Board
Getting to Ready Unhiding Work with a Backlog Refinement Board
Mark Grove
 
The Next Generation of the Consumer Rebalance Protocol With David Jacot | Cur...
The Next Generation of the Consumer Rebalance Protocol With David Jacot | Cur...The Next Generation of the Consumer Rebalance Protocol With David Jacot | Cur...
The Next Generation of the Consumer Rebalance Protocol With David Jacot | Cur...
HostedbyConfluent
 
Rawsthorne scrum patterns_agiledc_v2d
Rawsthorne scrum patterns_agiledc_v2dRawsthorne scrum patterns_agiledc_v2d
Rawsthorne scrum patterns_agiledc_v2d
Dan Rawsthorne
 
Why stop the world when you can change it? Design and implementation of Incre...
Why stop the world when you can change it? Design and implementation of Incre...Why stop the world when you can change it? Design and implementation of Incre...
Why stop the world when you can change it? Design and implementation of Incre...
confluent
 
Citi Tech Talk Disaster Recovery Solutions Deep Dive
Citi Tech Talk  Disaster Recovery Solutions Deep DiveCiti Tech Talk  Disaster Recovery Solutions Deep Dive
Citi Tech Talk Disaster Recovery Solutions Deep Dive
confluent
 
Are we there yet?
Are we there yet?Are we there yet?
Are we there yet?
Mike Burrows
 
Advanced Git: Functionality and Features
Advanced Git: Functionality and FeaturesAdvanced Git: Functionality and Features
Advanced Git: Functionality and Features
Brent Laster
 
Restoring Restoration's Reputation in Kafka Streams with Bruno Cadonna & Luca...
Restoring Restoration's Reputation in Kafka Streams with Bruno Cadonna & Luca...Restoring Restoration's Reputation in Kafka Streams with Bruno Cadonna & Luca...
Restoring Restoration's Reputation in Kafka Streams with Bruno Cadonna & Luca...
HostedbyConfluent
 
Getting the Balance Right with Kafka Connect
Getting the Balance Right with Kafka ConnectGetting the Balance Right with Kafka Connect
Getting the Balance Right with Kafka Connect
HostedbyConfluent
 
Real World Git Workflows - EclipseCon Europe 2013
Real World Git Workflows - EclipseCon Europe 2013Real World Git Workflows - EclipseCon Europe 2013
Real World Git Workflows - EclipseCon Europe 2013
Nicola Paolucci
 
Source Code Management Slides
Source Code Management SlidesSource Code Management Slides
Source Code Management Slides
daschuck
 
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
Diana Gray, MBA
 
Optimizing the Catalyst Optimizer for Complex Plans
Optimizing the Catalyst Optimizer for Complex PlansOptimizing the Catalyst Optimizer for Complex Plans
Optimizing the Catalyst Optimizer for Complex Plans
Databricks
 
Minimum viable product_to_deliver_business_value_v0.4
Minimum viable product_to_deliver_business_value_v0.4Minimum viable product_to_deliver_business_value_v0.4
Minimum viable product_to_deliver_business_value_v0.4Archana Joshi
 
Revitalizing your boring Retrospectives_3.0final
Revitalizing your boring Retrospectives_3.0finalRevitalizing your boring Retrospectives_3.0final
Revitalizing your boring Retrospectives_3.0finalTerri Spencer
 
Kafka Client-Broker Interactions – What You Don’t See With Tom Bentley | Curr...
Kafka Client-Broker Interactions – What You Don’t See With Tom Bentley | Curr...Kafka Client-Broker Interactions – What You Don’t See With Tom Bentley | Curr...
Kafka Client-Broker Interactions – What You Don’t See With Tom Bentley | Curr...
HostedbyConfluent
 
Design Systems + Git = Success - Clarity Conference 2018
Design Systems + Git  = Success - Clarity Conference 2018Design Systems + Git  = Success - Clarity Conference 2018
Design Systems + Git = Success - Clarity Conference 2018
Katie Sylor-Miller
 
553216066-Engine-Life-Optimization-Final-Document-Version-00-8-9-21.pdf
553216066-Engine-Life-Optimization-Final-Document-Version-00-8-9-21.pdf553216066-Engine-Life-Optimization-Final-Document-Version-00-8-9-21.pdf
553216066-Engine-Life-Optimization-Final-Document-Version-00-8-9-21.pdf
JesusDGutierrezG
 
KEA20 - Susanne Bartel - What is "your Kanban"?
KEA20 - Susanne Bartel - What is "your Kanban"?KEA20 - Susanne Bartel - What is "your Kanban"?
KEA20 - Susanne Bartel - What is "your Kanban"?
RealResult
 

Similar to The Silver Bullet for Endless Rebalancing (20)

The Next Generation of the Consumer Rebalance Protocol with David Jacot
The Next Generation of the Consumer Rebalance Protocol with David JacotThe Next Generation of the Consumer Rebalance Protocol with David Jacot
The Next Generation of the Consumer Rebalance Protocol with David Jacot
 
Getting to Ready Unhiding Work with a Backlog Refinement Board
Getting to Ready Unhiding Work with a Backlog Refinement BoardGetting to Ready Unhiding Work with a Backlog Refinement Board
Getting to Ready Unhiding Work with a Backlog Refinement Board
 
The Next Generation of the Consumer Rebalance Protocol With David Jacot | Cur...
The Next Generation of the Consumer Rebalance Protocol With David Jacot | Cur...The Next Generation of the Consumer Rebalance Protocol With David Jacot | Cur...
The Next Generation of the Consumer Rebalance Protocol With David Jacot | Cur...
 
Rawsthorne scrum patterns_agiledc_v2d
Rawsthorne scrum patterns_agiledc_v2dRawsthorne scrum patterns_agiledc_v2d
Rawsthorne scrum patterns_agiledc_v2d
 
Why stop the world when you can change it? Design and implementation of Incre...
Why stop the world when you can change it? Design and implementation of Incre...Why stop the world when you can change it? Design and implementation of Incre...
Why stop the world when you can change it? Design and implementation of Incre...
 
Citi Tech Talk Disaster Recovery Solutions Deep Dive
Citi Tech Talk  Disaster Recovery Solutions Deep DiveCiti Tech Talk  Disaster Recovery Solutions Deep Dive
Citi Tech Talk Disaster Recovery Solutions Deep Dive
 
Are we there yet?
Are we there yet?Are we there yet?
Are we there yet?
 
Advanced Git: Functionality and Features
Advanced Git: Functionality and FeaturesAdvanced Git: Functionality and Features
Advanced Git: Functionality and Features
 
Restoring Restoration's Reputation in Kafka Streams with Bruno Cadonna & Luca...
Restoring Restoration's Reputation in Kafka Streams with Bruno Cadonna & Luca...Restoring Restoration's Reputation in Kafka Streams with Bruno Cadonna & Luca...
Restoring Restoration's Reputation in Kafka Streams with Bruno Cadonna & Luca...
 
Getting the Balance Right with Kafka Connect
Getting the Balance Right with Kafka ConnectGetting the Balance Right with Kafka Connect
Getting the Balance Right with Kafka Connect
 
Real World Git Workflows - EclipseCon Europe 2013
Real World Git Workflows - EclipseCon Europe 2013Real World Git Workflows - EclipseCon Europe 2013
Real World Git Workflows - EclipseCon Europe 2013
 
Source Code Management Slides
Source Code Management SlidesSource Code Management Slides
Source Code Management Slides
 
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
UiPath REFramework Modify the Framework -Add States, Remove States - Develope...
 
Optimizing the Catalyst Optimizer for Complex Plans
Optimizing the Catalyst Optimizer for Complex PlansOptimizing the Catalyst Optimizer for Complex Plans
Optimizing the Catalyst Optimizer for Complex Plans
 
Minimum viable product_to_deliver_business_value_v0.4
Minimum viable product_to_deliver_business_value_v0.4Minimum viable product_to_deliver_business_value_v0.4
Minimum viable product_to_deliver_business_value_v0.4
 
Revitalizing your boring Retrospectives_3.0final
Revitalizing your boring Retrospectives_3.0finalRevitalizing your boring Retrospectives_3.0final
Revitalizing your boring Retrospectives_3.0final
 
Kafka Client-Broker Interactions – What You Don’t See With Tom Bentley | Curr...
Kafka Client-Broker Interactions – What You Don’t See With Tom Bentley | Curr...Kafka Client-Broker Interactions – What You Don’t See With Tom Bentley | Curr...
Kafka Client-Broker Interactions – What You Don’t See With Tom Bentley | Curr...
 
Design Systems + Git = Success - Clarity Conference 2018
Design Systems + Git  = Success - Clarity Conference 2018Design Systems + Git  = Success - Clarity Conference 2018
Design Systems + Git = Success - Clarity Conference 2018
 
553216066-Engine-Life-Optimization-Final-Document-Version-00-8-9-21.pdf
553216066-Engine-Life-Optimization-Final-Document-Version-00-8-9-21.pdf553216066-Engine-Life-Optimization-Final-Document-Version-00-8-9-21.pdf
553216066-Engine-Life-Optimization-Final-Document-Version-00-8-9-21.pdf
 
KEA20 - Susanne Bartel - What is "your Kanban"?
KEA20 - Susanne Bartel - What is "your Kanban"?KEA20 - Susanne Bartel - What is "your Kanban"?
KEA20 - Susanne Bartel - What is "your Kanban"?
 

More from confluent

Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
confluent
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Era
confluent
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
confluent
 
Santander Stream Processing with Apache Flink
Santander Stream Processing with Apache FlinkSantander Stream Processing with Apache Flink
Santander Stream Processing with Apache Flink
confluent
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insights
confluent
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flink
confluent
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
confluent
 
AWS Immersion Day Mapfre - Confluent
AWS Immersion Day Mapfre   -   ConfluentAWS Immersion Day Mapfre   -   Confluent
AWS Immersion Day Mapfre - Confluent
confluent
 
Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalk
confluent
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
confluent
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
confluent
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
confluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Mesh
confluent
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservices
confluent
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3
confluent
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernization
confluent
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time data
confluent
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2
confluent
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023
confluent
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesis
confluent
 

More from confluent (20)

Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Era
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Santander Stream Processing with Apache Flink
Santander Stream Processing with Apache FlinkSantander Stream Processing with Apache Flink
Santander Stream Processing with Apache Flink
 
Unlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insightsUnlocking the Power of IoT: A comprehensive approach to real-time insights
Unlocking the Power of IoT: A comprehensive approach to real-time insights
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flink
 
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
Industry 4.0: Building the Unified Namespace with Confluent, HiveMQ and Spark...
 
AWS Immersion Day Mapfre - Confluent
AWS Immersion Day Mapfre   -   ConfluentAWS Immersion Day Mapfre   -   Confluent
AWS Immersion Day Mapfre - Confluent
 
Eventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalkEventos y Microservicios - Santander TechTalk
Eventos y Microservicios - Santander TechTalk
 
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent CloudQ&A with Confluent Experts: Navigating Networking in Confluent Cloud
Q&A with Confluent Experts: Navigating Networking in Confluent Cloud
 
Citi TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep DiveCiti TechTalk Session 2: Kafka Deep Dive
Citi TechTalk Session 2: Kafka Deep Dive
 
Build real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with ConfluentBuild real-time streaming data pipelines to AWS with Confluent
Build real-time streaming data pipelines to AWS with Confluent
 
Q&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service MeshQ&A with Confluent Professional Services: Confluent Service Mesh
Q&A with Confluent Professional Services: Confluent Service Mesh
 
Citi Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka MicroservicesCiti Tech Talk: Event Driven Kafka Microservices
Citi Tech Talk: Event Driven Kafka Microservices
 
Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3Confluent & GSI Webinars series - Session 3
Confluent & GSI Webinars series - Session 3
 
Citi Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging ModernizationCiti Tech Talk: Messaging Modernization
Citi Tech Talk: Messaging Modernization
 
Citi Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time dataCiti Tech Talk: Data Governance for streaming and real time data
Citi Tech Talk: Data Governance for streaming and real time data
 
Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2Confluent & GSI Webinars series: Session 2
Confluent & GSI Webinars series: Session 2
 
Data In Motion Paris 2023
Data In Motion Paris 2023Data In Motion Paris 2023
Data In Motion Paris 2023
 
Confluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with SynthesisConfluent Partner Tech Talk with Synthesis
Confluent Partner Tech Talk with Synthesis
 

Recently uploaded

PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
Abida Shariff
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 

Recently uploaded (20)

PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 

The Silver Bullet for Endless Rebalancing