shiichan

Say Goodbye to Partition Key Management with Kinesis Data Streams' New Auto-Distribution

Hi, it's Shii-chan! Today I found a small but genuinely useful update for anyone working with streaming data. Let's take a look!

AWS What's New aws.amazon.com

What was announced?

This news comes from AWS What's New. Amazon Kinesis Data Streams now supports Service-Managed Partition Keys for On-Demand Standard and On-Demand Advantage streams. It lets the service automatically distribute records across shards without you having to specify a partition key when publishing data.

The story so far

Up to now, the common approach was to generate a random partition key, like a UUID, and specify it yourself to spread records across shards. But even with random partitioning, throughput could end up uneven across shards, causing some partition keys to get throttled even when the stream had plenty of aggregate capacity. For use cases that don't need ordering at all, like log aggregation, metrics collection, or IoT telemetry, teams still had to maintain this distribution logic themselves.

What changes

With Service-Managed Partition Keys, you no longer need to specify a partition key when publishing to an on-demand stream. The service automatically distributes records based on available warm capacity, letting you scale up to gigabytes per second without maintaining any distribution logic yourself.

For teams running workloads that don't need ordering, like log aggregation or IoT telemetry, this removes a whole category of partition key design headaches.

Dive Deep

Using it is simple: upgrade to the latest AWS SDK or Kinesis Producer Library (KPL) version, and you can publish records without specifying a partition key. No other configuration is needed.

There's no additional cost, and it's available in all AWS regions.

Wrap-up

  • Kinesis Data Streams' On-Demand Standard and On-Demand Advantage streams can now auto-distribute records without a specified partition key
  • This helps avoid the uneven throughput and throttling that random partition keys could cause across shards
  • Just upgrade to the latest AWS SDK or KPL to use it, at no extra cost, in every region

If you're a data engineer running streaming workloads that don't need ordering, like log aggregation or IoT telemetry, this is worth trying right away!