Skip to main content

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.