SQS vs. SNS vs. Kinesis
Updated Jul 26, 2020 ·
NOTES
This is not an exhaustive documentation of all the existing AWS Services. These are summarized notes that I used for the AWS Certifications.
To see the complete documentation, please go to: AWS documentation
Overview
-
SQS
- Consumers pull data.
- Data is deleted after being consumed.
- Can have many consumers as we want.
- No need to provision throughput.
- No ordering guarantee in case of standard queues.
- Capability to delay individual messages.
-
SNS
- Pub/Sub: publish data to many subscribers.
- We can have up to 10 million subscribers per topic.
- Data is not persisted (it is lost if not delivered).
- Up to 10k topics per account.
- No need to provision throughput.
- Integrates with SQS for fan-out architecture.
-
Kinesis Data Streams
- Consumers "pull data".
- We can have as many consumers as we want.
- Possibility to replay data.
- Recommended for real-time big data analytics and ETL.
- Ordering happens at the shard level.
- Data expires after X days.
- Must provision throughput.