SQS, and Kinesis Flashcards

1
Q

What is the max message size in SQS?

A

256 KB.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What the number of messages that can

be processed as a batch in SQS?

A

10 messages at a time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is visibility timeout in SQS?

A

Once a consumer receives a message, SQS doesn’t allow any other consumers to read the same message for a period of time, called the visibility timeout.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the default and max visibility timeout period in SQS?

A
  • Default: 30 seconds.

- Max: 12 hours

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the default and max retention period in SQS?

A
  • Default: 4 days

- Max: 14 days

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is default and max per-queue delay settings in SQS?

A
  • Default: 0 second

- Max: 15 minutes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the two different queue types in SQS?

A
  • Standard queue

- FIFO queue

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What are the pros and cons of standard queue in SQS?

A

Pro: almost unlimited throughput. Can handle 120,000 in-flight message.

Con:

  • Messages may be delivered out of order
  • Messages may occasionally be delivered more than once
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What are the pros and cons of FIFO queue in SQS?

A

Pro:

  • Messages are delivered in order
  • Messages are delivered exactly once
  • Supports message grouping

Con:

  • Can send 3,000 messages per second
  • Can handle 20,000 in-flight messages
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Is message in SQS deleted automatically after received by client?

A

No, client will need to delete it by calling API.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are polling options to receive messages from SQS?

A
  • Short polling (quick, but may not get all the messages)

- Long polling (slow, but get all messages)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is Dead-Letter Queue in SQS?

A

You can have SQS automatically pull such a message from your source queue and place it into a dead‐letter queue after it’s been received so many times.

It’s based on maxReceiveCount of the message.

One thing to keep in mind is that when a message is moved to a dead‐letter queue, the message will be deleted based on its original creation date.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is Kinesis?

A

Kinesis is a collection of services that let you collect, process, store, and deliver streaming data.

Kinesis can perform real‐time ingestion of gigabytes per second from thousands of sources, making it perfect for things like audio and video feeds, application logs, and telemetry data.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the Kinesis offerings?

A
  • Kinesis Video Streams
  • Kinesis Data Streams
  • Kinesis Data Firehose
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is Kinesis Video Streams?

A

Kinesis Video Streams is designed to ingest and index almost unlimited amounts of streaming video data, such as from webcams, security cameras, and smartphones.

Kinesis Video Streams uses a producer‐consumer model.

Kinesis automatically indexes the stream by using timestamps, allowing for easy retrieval later on.

By default, Kinesis Video Streams will store a video stream for 24 hours, but you can extend this retention period up to 7 days.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is Kinesis Data Streams?

A

Kinesis Data Streams is a data pipeline that can aggregate, buffer, and reliably store data from producers until a consumer is ready to process it.

Kinesis Data Streams stores data in a data record, along with a partition key and sequence number to uniquely identify each record.

Multiple consumers can read from a stream concurrently, a process called fan‐out.

The maximum throughput of a stream depends on the number of shards you configure.

Each shard supports up to five read transactions per second, with a maximum data rate of 2 MB per second. For writes, you can push up to 1,000 records per second, with a data rate of 1 MB per second.

17
Q

What’s the difference between SQS and Kinesis Data Streams?

A

SQS temporarily holds a small message in queue until a single consumer processes and deletes it.

Kinesis Data Streams, on the other hand, is designed to provide durable storage and playback of large data streams—such as log files—to multiple consumers.

18
Q

What is Kinesis Data Firehose?

A

Kinesis Data Firehose can ingest streaming data and transform it before sending it to a destination. Data transformation may include cleaning data or converting it to a different format.

You can configure Kinesis Data Firehose to receive data from a Kinesis Data Stream.

19
Q

What is the difference between Kinesis Data Streams and Kinesis Data Firehose?

A

Kinesis Data Streams uses producer-consumer model, and has a retention period of 7 days.

Kinesis Data Firehose is not an open-ended solution, and you must configure one or more AWS resources as destinations. The retention period is 24 hours.