Kinesis
A highly-durable linked list in the cloud
Use-cases are similar to SQS— you would typically use either Kinesis or SQS when you want to enqueue records for asynchronous processing.
- use-cases are also similar to Kafka
Difference with SQS:
- SQS can only have one consumer, while Kinesis can have many.
- Once an SQS message gets consumed, it gets deleted from the queue. But Kinesis records get added to a list in a stable order, and any number of consumers can read a copy of the stream by keeping a cursor over this never-ending list.
- Multiple consumers don’t affect each other, and if one falls behind, it doesn’t slow down the other consumers.
- Whenever consumers read data out of Kinesis, they will always get their records in the same order.
- Often cheaper than SQS
- Kinesis can carry a significant operational burden with the need to provision capacity (shards).
Backlinks