AWS › Amazon Kinesis & Data Streaming

What is enhanced fan out in Kinesis Data Streams, and why is it useful for multiple consumers?

Advanced

Answer

Enhanced fan out gives each registered consumer its own dedicated two megabyte per second throughput pipe for every shard using a push based delivery mechanism, meaning multiple consumer applications can read the exact same stream simultaneously at full speed without competing for the shared two megabyte per second read throughput that would otherwise need to be divided among all consumers using the standard polling model.
aws kinesis register-stream-consumer --stream-arn arn:aws:kinesis:us-east-1:123456789012:stream/my-stream --consumer-name my-analytics-consumer
Real-world example A company running both a real time fraud detection application and a separate real time reporting dashboard off the same Kinesis stream registers each as an enhanced fan out consumer, ensuring neither application's read performance is throttled by the other.

Common follow-ups: How many enhanced fan out consumers can be registered per stream?;What is the additional cost consideration of using enhanced fan out?