Claim pageClaim
Follow
Overview
News
Salaries
Products
People
Growth
Offices
Financials
News
Apache Kafka performance #1 - linger.ms
This is the first in an ongoing ad-hoc series of posts on Apache Kafka performance. I have no general direction, I'll just share interesting insights based on the performance testing I do on Apache Kafka.Recently I was curious to see if there was any gene
Read more
Report
1BRC on a Threadripper 9980X
Yesterday I published some benchmarks of Hardwood 1.0 on my Threadripper. Someone suggested I run the One Billion Row Challenge too, to see how it does, so here it is!Gunnar Morling ran the original benchmarks on an EPYC 7502P, Zen 2, 32 cores with 128 GB
Read more
Report
Benchmarking Hardwood 1.0 on a Threadripper 9980X
Hardwood is a minimal-dependency Java library for reading Parquet files. It currently has row-reader and columnar-reader APIs, with Parquet writing planned for the future.Gunnar Morling, Hardwood's author, published some initial benchmarks in the v1.0 ann
Read more
Report
Kafka Share Groups - Pathological fetch waits with record_limit
In this post we're going to see how share.acquire.mode=record_limit combined with:fewer consumers than partitionsand various cases of "partition skew"…can result in subpar performance with share groups. I stumbled on these issues when running large sets o
Read more
Report
Can We Agree on a Storage/Workload Architecture Taxonomy?
The lines between transactional systems, analytical systems, hybrid systems, and shared storage architectures are getting blurry. This post proposes a small taxonomy for describing the different ways systems, workloads, storage tiers, visibility, and dura
Read more
Report
Raise the ambition threshold
"Perfection is finally attained not when there is no longer anything to add, but when there is no longer anything to take away." - Antoine de Saint-ExupéryAI gives us an unprecedented ability to add. The danger is that we begin to mistake accumulation for
Read more
Report
Kafka Share Groups and Parallelizing Consumption - Part 3: Client-local parallelism
All tests were executed against Kafka 4.3.0 using Dimster. In the last post Broker-Visible vs Client-Local Parallelism we looked at two ways of scaling Kafka consumption. The final unit of parallelism can be visible to the broker, as consumers, or it can
Read more
Report
Broker-Visible vs Client-Local Parallelism
This post is a little side-quest from my "Kafka Share Groups and Parallelizing Consumption" series.My "Kafka Share Groups and Parallelizing Consumption" series (part 1, part 2) has been laser focused on how different configurations and behaviors affect pa
Read more
Report
Kafka Share Groups and Parallelizing Consumption - Part 2: Producer Batches and share.acquire.mode
All tests were executed against Kafka 4.3.0 using Dimster. In the last post we used simulated consumer processing time to reveal how important it is to set an appropriate value for max.poll.records to ensure the consumer parallelism that we expect. With a
Read more
Report
Kafka Share Groups and Parallelizing Consumption - Part 1: Tuning max.poll.records
All tests were executed against Kafka 4.2.0 using Dimster (and also validated against 4.3.0). In the last post we measured the overhead that the mechanics of share groups adds, and saw that it is pretty small. Likewise we saw that raw throughput was also
Read more
Report
Show more news
