Which service should you use?

You are deploying an application to collect votes for a very popular television show. Millions of users will submit
votes using mobile devices. The votes must be collected into a durable, scalable, and highly available data
store for real-time public tabulation. Which service should you use?

You are deploying an application to collect votes for a very popular television show. Millions of users will submit
votes using mobile devices. The votes must be collected into a durable, scalable, and highly available data
store for real-time public tabulation. Which service should you use?

A.
Amazon DynamoDB

B.
Amazon Redshift

C.
Amazon Kinesis

D.
Amazon Simple Queue Service



Leave a Reply 23

Your email address will not be published. Required fields are marked *


guru10

guru10

But what about real-time public tabulation? Kinesis sounds right in that case.

VenuDC

VenuDC

Asked for data store… I would say DynamoDB (A)

Prashant

Prashant

Answer should be C. Amazon Kinesis as this is related to consumption of very large data. If need to apply business intelligence to tabulate it then Redshift is right option.

SHI Bin

SHI Bin

C. I agree with you.

Junaid

Junaid

The votes must be collected into a durable, scalable, and highly available data
store for “real-time public tabulation”. The key is “real-time public tabulation”. Its C.

Sachin

Sachin

Answer is A

Linh

Linh

Answer is A because data store for real-time

vv

vv

Kinesis is not durable, Red shift and DynamoDB is more durable… millions of voters… sounds Red shift to me.

vv

vv

And still I vote for Kinesis, their FAQ match most objectives

Ash

Ash

“must be collected into a durable, scalable, and highly available data store”

A. Amazon DynamoDB

dickloveqdd

dickloveqdd

I think C is correct.
Use Kinesis you still can store data into DynamoDB after analyse them.

Steve

Steve

The question isn’t asking how to stream data into AWS, it’s asking where to store it. Please read the question thoroughly. The answer is DynamoDB – this is where the data will be stored.

Harsha

Harsha

Why not ‘D’ ?

The votes should be processed only once, which SQS ensures.

Paras

Paras

Amazon DynamoDB is correct answer

Parmod

Parmod

Dynamo DB is NO SQL so no table. So no “real-time public tabulation”. I would go with C.

charm

charm

It is, Amazon DynamoDB

julia

julia

I would go with C.

——————-

Benefits of Using Kinesis Data Streams
While you can use Kinesis Data Streams to solve a variety of streaming data problems, a common use is the real-time aggregation of data followed by loading the aggregate data into a data warehouse or map-reduce cluster.

Data is put into Kinesis data streams, which ensures durability and elasticity. The delay between the time a record is put into the stream and the time it can be retrieved (put-to-get delay) is typically less than 1 second — in other words, a Amazon Kinesis Data Streams application can start consuming the data from the stream almost immediately after the data is added. The managed service aspect of Kinesis Data Streams relieves you of the operational burden of creating and running a data intake pipeline. You can create streaming map-reduce type applications, and the elasticity of Kinesis Data Streams enables you to scale the stream up or down, so that you never lose data records prior to their expiration.

Multiple Amazon Kinesis Data Streams applications can consume data from a stream, so that multiple actions, like archiving and processing, can take place concurrently and independently. For example, two applications can read data from the same stream. The first application calculates running aggregates and updates a DynamoDB table, and the second application compresses and archives data to a data store like Amazon S3. The DynamoDB table with running aggregates is then read by a dashboard for up-to-the-minute reports.

The Kinesis Client Library enables fault-tolerant consumption of data from streams and provides scaling support for Amazon Kinesis Data Streams applications.

Benefits
Real-time
Kinesis Data Streams allows for real-time data processing. With Kinesis Data Streams, you can continuously collect data as it is generated and promptly react to critical information about your business and operations.
Secure
You can privately access Kinesis Data Streams APIs from your Amazon Virtual Private Cloud (VPC) by creating VPC Endpoints. You can meet your regulatory and compliance needs by encrypting sensitive data within Kinesis Data Streams using server-side encryption and AWS KMS master keys.
Easy to Use
You can create a Kinesis stream within seconds. You can easily put data into your stream using the Kinesis Producer Library (KPL), and build Kinesis Applications for data processing using the Kinesis Client Library (KCL).
Parallel Processing
Kinesis Data Streams allows you to have multiple Kinesis Applications processing the same stream concurrently. For example, you can have one application running real-time analytics and another sending data to Amazon S3 from the same stream.
Elastic
The throughput of a Kinesis data stream can scale from megabytes to terabytes per hour and from thousands to millions of PUT records per second. You can dynamically adjust the throughput of your stream at any time based on the volume of your input data.
Low Cost
Kinesis Data Streams has no upfront cost and you only pay for the resources you use. For as little as $0.015 per hour, you can have a Kinesis data stream with 1MB/second ingest rate and 2MB/second egress rate.
Reliable
Kinesis Data Streams synchronously replicates your streaming data across three facilities in an AWS Region and preserves your data for up to 7 days, reducing the probability of data loss in case of application failure, individual machine failure, or facility failure.