AWS Certified Developer Notes

The following code snippets is the parameters section of a CloudFormation template that you have written. “Parameters”: {“KeyName”:{“Description”:”answer to the question”,”Type”:”AWS::EC2::KeyPair::KayName”,…}} What is the best description of what this section ill do once you run your CloudFormation template? – It will ask you to provide the name of an existing EC2 KeyPair to use. – Before launching the creation of our CloudFormation template, CloudFormation will ask us to choose an existing keypair name to associate with our EC2 instance(s). This Parameters section allows us to do that.

In AWS Cloud Formation, the intrinsic function Fn::Join appends a set of values into a single value, separated by the specified delimter. If a delimeter is the empty string, the set of values are concatenated with no delimeter. Keeping the above in mind what value will the folowing example return? “Fn::Join”:[“-“,[“aws”,”is”,”awesome”]]? Answer: aws-is-awesome.

Explain what the following resource in a CloudFormation template does. Choose the best possible answer. “SNSTopic”:{“Type”:”AWS::SNS::Topic”,”Properties”:{“Subscription”:[{“Protocol”:”sqs”,”Endpoint”:{“Fn::GetAtt”:[“SQSQueue”,”Arn”]}}]} – Creates an SNS topic and adds a subscription ARN endpoint for the SQS resource created under the logical name SQSQueue.

It is TRUE that in addition to CloudFormation Syntax and Function, you need to be familiar with the available CLI commands (they start with cfn-) and API calls.

Which API call is used to list all resources that belong to a CloudFormation stack? – ListStackResources

It is TRUE the template description declaration cannot be added if the AWSTemplateFormatVersion is not declared at the top of the template.

You are writing an AWS CloudFormation Template to create a static S3 website configuration. The resources section of this template will be used for access control of the bucket and is defined in the 5th line of the below code snippet. What should the value of “AccessControl” be so that the owner of the bucket gets full control and all users get READ access only. “Resources”:{“S3Bucket”:{“Type”:”AWS::S3::Bucket”:,””Properties”:{“AccessControl”:”ANSWER TO THE QUESTION”,”BucketName”:{“Ref:”BucketName”},”WebsiteConfiguration”:{“IndexDocument”:”index.html”,”ErrorDocument”:”error.html”}}} – Answer: PublicRead

You are writing an AWS CloudFormation template and you want to assign values to properties that will not be available until runtime. You know that you can use intrinsic functions to do this but are unsure as to which part of the template they can be used in. Which of the following is correct in describing how you can currently use intrinsic functions in an AWS CloudFormation template? – You can use intrinsic functions in specific parts of a template. You can use intrinsic functions in resource properties, metadata attributes, and update policy attributes.

Of the 6 available sections on a CloudFormation template (Template Description Declaration, Template Format Version Declaration, Parameters, Resources, Mappings, Outputs), which is the only one required for a CloudFormation template to be accepted? – Resources.

What is the default behavior of a CloudFormation stack if creation fails? – Rollback.

The following code snippet is the resources section of a CloudFormation template that you have written. “Resources”:{“EC2Instance”:{“Type”:”AWS::EC2::Instance”,”Properties”:{“InstanceType”:{“Ref”:”InstanceType”:},”SecurityGroups”:[{“Ref”:”InstanceSecurityGroup”}],”KeyName”:{“Ref”:”AWS::Region”},{“Fn::FindMap”:[“AWSInstanceType2Arch”,{“Ref”:”InstanceType”},”Arch”]}]}}}, You have used the reference function to define your instance type as follows. “InstanceType”:{“Ref”:”InstanceType”},The referencing function is referencing the instance type., Where is this value most likely coming from? – From the parameters section of you CloudFormation template.

You have reached your account limit for the number of CloudFormation stacks in a region. how do you increase your limit? – Contact AWS. – The limit for CloudFormation stacks in a single region is 200. However, this limit can be increased by contacting AWS.

fn:GetAtt is used on a CloudFormation template to: – Return the value of an attribute from a resource on the template. – fn:GetAtt is an intrinsic function. Intrinsic functions pass are used to grab data that is only available at stack runtime.

What result would you expect from the Fn::Join”:[“/”,[“list-a”,”list-b”,”list-c”]] – list-a/list-b/list-c – The intrinsic join function will join together the [“list-a,”list-b”,”list-c”] fragments, separating each fragment with the specified delimiter “/”.

It is FALSE that the AWSTemplateFormatVersion declaration is required for the template to work inside CloudFormation.

Which command line commands list all current stacks in your CloudFormation service? – cfn-describe-stacks, cfn-list-stacks. – The cfn-describe-stacks command will list all current stacks in CloudFormation. Taking the same naming convention you’d find that the “core” query API call to list all stacks would be DescribeStacks. The cfn-list-stacks will also return a list of our stacks, with the option to filter through different stacks statuses. Note that ‘cfn-‘ has been deprecated. The new naming convention would be ‘describe-stacks’ and ‘list-stacks’ instead. We are leaving this here because you are still likely to see the deprecated naming convention on the exam.

Simple Workflow Service

An SWF workflow task or task execution can live up to 1-Year long.

It is TRUE that SQS guarantees delivery but there can be duplicates.

SWF guarantees delivery order of messages/tasks.

Elastic Compute Cloud

The one key difference between and Amazon EBS-backed and an instance-store backed instance is that the Amazon EBS-backed instances can be stopped and restarted.

Which API call would best be used to describe an Amazon Machine Image? – DescribeImages.

You are having trouble maintaining session states on some of your applications that are using an Elastic Load Balancer (ELB). As well as that there does not seem to be an even distribution of sessions across your ELB. To overcome this problem which of the following is the recommended method by AWS to try and rectify the issues that you are having? – Use ElastiCache, which is a web service that makes it easy to set up, manage, and scale a distributed in-memory cache environment in the cloud.

You are deploying your first EC2 instance in AWS and are using the AWS console to do this. You have chosen your AMI and your instance type and have now come to the screen where you configure your instance details. One of the things that you need to decide is whether you want to auto-assign a public IP address or not. You assume that if you do not choose this option you will be able ot assign an Elastic IP address later, which happens to be a correct assumption. Which of the below options best describes why an Elastic IP address would be preferable to a public address? – With an Elastic IP address, you can mask the failure of an instance or software by rapidly remapping the address to another instance in your account.

After having created a new Linux instance on Amazon EC2, and downloaded the .pem file called (Myfile.pem) you try and SSH into your IP address (47.3.4.2) using the following command: ssh -i Myfile.pem ec2-user@47.3.4.2. However, you receive the following error. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ What is the most probable reason for this and how can you fix it? – Your key file must not be publicly viewable for SSH to work. You need to modify your pem file as follows “chmod” 400 Myfile.pem”

The best method for maintaining application session state when using an Elastic Load Balancer is to use ElastiCache.

It is TRUE that AMI’s can be shared to individual AWS accounts.

EC2 instances are launched from Amazon Machine Images (AMI’s). A given public AMI: – Can only be used to launch EC2 instances in the same AWS region as the AMI is stored. – AMI’s are only available in the region they are created. You cannot access an AMI from one region in another region. However, you can copy an AMI from one region to another.

You have and EBS root device on /dev/sda1 on one of your EC2 instances. You are having trouble with this particular instance and you need to either Stop/Start, Reboot or Terminate the instance but you do NOT want to lose any data that you have stored on /dev/sda1. However, you are unsure if changing the instance state in any of the aforementioned ways will cause you to lose data stored on the EBS volume. Which of the below statements best describes the effect each change of instance state would have on the data you have stored on /dev/sda1? – The data will be lost if you terminate the intance, however the data will remain on /dev/sda1 if you reboot or stop/start the instance because data on an EBS volume is not ephemeral.

Which API call occurs in the final process of creating an AMI? – RegisterImage

More Notes

An item stored in a DynamoDB can contain any number of Attributes associate to it. – In DynamoDB, an item is a collection of attributes. Each attribute has a name and a value. An attribute value can be a number, a string, a binary, or a set of any of these.

You run an ad-supported photo sharing website using S3 to serve photos to visitors of your site. At some point you find out that other sites have been linking to the photos on your site, causing loss to your business. What is an effective method to mitigate this? – Remove public read access and use signed URL’s with expiry dates.

It is TRUE that S3 bucket names may only contain lower case letters, periods, numbers, and dashes but do not have to contain them all.

It is FALSE that 10.2.181.56 is a valid S3 bucket name.

Which of the following is true about S3 Server-Side Encryption? – Is uses AES-256

Which of the following AWS Services are offered at no cost? – Auto Scaling and Amazon VPC.

Which of the following is NOT TRUE about SWF? – Humans can perform a decision task. – Humans can perform an activity task, but not a decision task.

You would like to set up a static website on S3 with the least possible effort. The URL of the website is unimportant to you. Which of the following steps are necessary? – Upload an index document to your S3 bucket, Enable static ebsite hosting in your S3 bucket properties, Select the “Make Public” permission for your bucket’s objects.

Which of the following can be increased by contacting AWS? – S3 buckets per account, DynamoDB tables per account per region.

You are working with the S3 API and receive an error message: 409 Conflict. What is the possible cause of this error? – You’re attempting to remove a bucket without emptying the contents of the bucket first.

You want to find out what AMI’s are available for you to use in a given region. Which API call is most appropriate? – DescribeImages.

You define the following S3 bucket policy to grant users access to your bucket, but the 3 bucket policy editor will not allow you to submit it. Why is this policy not working? {“Id”:Policy1881839160967″,”Version”:”2012-10-17″,”Statement”:[{“Sid”:”Stmnt1881439157568″, “Action”:[“S3:ListBucket”],”Effect”:”Allow”, “Resource”:”arn:aws:s3:::awesomebucket.coolbeans.3″}]} – The S3 bucket policies require a Principal be defined

You have created an Elastic Load Balancer with Duration-Based sticky sessions enabled in front of your 6 EC2 web application instances in US-West-2. For High Availability, there are three web application instances in Availability Zone 1 and three web application instances in Availability Zone 2. To load test, you set up software-based load tester in Availability Zone 2 to send traffic to the Elastic Load Balancer, as well as letting several hundred users browse to the ELB’s hostname. After a while, you notice that the users’ sessions are spread evenly across the EC2 instances in both AZ’s, but the software-based load tester’s traffic is hitting only the instances in Availability Zone 2. What steps can you take to resolve this problem? – Use third party load-testing service to send requests from globally distributed clients, Force the software-based load test to re-resolve DNS before every request.

Which of the following is NOT a common S3 API call? – ReadObject. ReadObject is not an S3 call. Getting a general overview of S3 API calls will help you on the exam.

You have created a mobile application that relies on reading data from DynamoDB. How could you give each mobile device permissions to read from DynamoDB? – Create an IAM role that can be assumed by an app that allows federated users.

You attempt to create a new S3 bucket “Linux-Academy-Bucket-12-US-East-1-Production-Environment-12.25.14” in the US-East-1 region and the bucket creation fails. Why? – The bucket name uses capital letters.

Your supervisor asks you to find a solution for scheduling a sequence of tasks. The sequence may take several months to complete and it’s very important that no tasks are processed more than once. What AWS service should you recommend? – SWF. SWF workflows can last up to a year and tasks are guaranteed to be processed in the correct order.

A SWF wokflow task or task execution can live up to 1 year long.

You need to announce an emergency downtime for a production AWS web application. This downtime notification will require different sets of instructions for different devices. All of the application users signed up to receive SNS notification from the “mywebapp” topic. What are appropriate ways for you to provide timely, device-specific instructions to end users when announcing this downtime? – Send a single message, but customize the text in the SNS message field so that each device gets only the information that is appropriate for them.

It is TRUE that Multi-part upload allows you to stop and resume uploads.

Which API call would you use to query an item by it’s primary hash key? – GetItem. The GetItem operation returns a set of Attributes for an item that matches the primary key. If there is no matching item, GetItem does not return any data. It is suggested that you become familiar with the DynamoDB API calls.

Which of the following cannot be used inside a CloudFormation template? – Ruby Statements. CloudFormation uses JSON templates.

You are creating several DynamoDB tables for a new project. While doing so, you receive the error message, “LimitExceededException.” You are well below the maximum number of tables per account and there is no read or write activity on the tables yet. Why have you received this error? – You attempted to create more than one table with a secondary index at a time. – You can create global and local secondary indexes at the same time you create a table, but you mist wait for the first table with a secondary index to become active before creating the next one. Failure to do so produces the “LimitExceedsException” error.

Which of the following are supported platforms in Elastic Beanstalk? – Microsoft IIS and Apache.

You have items in your table that are 12k in size and you want to have 10 strongly consistent reads per second. How many read capacity unites would you need to provision? – 30. – 10x(12/4)=30.

A DynamoDB table can contain 5 local secondary indexes on a table.

Which of the following are subject to eventual consistency? – Reads of DynamoDB table, unless you specify otherwise. – Reads of a DynamoDB table are subject to eventual consistency by default, but you can choose strongly consistent reads instead.

Which of the following statements is true about DynamoDB? – Requests are eventually consistent unless otherwise specified. – Data is eventually consistent because DynamoDB maintains multiple copies of an item to ensure durability. The default read is an eventually consistent read. You can specify strongly consistent reads but it does require additional read capacity units each request. However, it will receive the most recent version of the item is you specify a strongly consistent read.

For which of these languages does AWS provide an SDK? Select 3. – Go, PHP, Java.

your supervisor calls you wanting to know why she has not been receiving email notifications for AWS billing alerts. What do you suspect the problem might be and how can you find out? – Your supervisor has not responded to the confirmation email sent from SNS when you added a subscription for her email address. Verify by viewing Subscriptions for the appropriate Topic in SNS, The SNS Subscription is not configured for Email notifications. Verify by viewing Subscriptions for the appropriate Topic in SNS, Billing alerts are not configured. Verify by viewing Billing Alerts in Account Preferences.

While working with the S3 API, you receive the following error: 409 conflict. What is the most likely cause? – Bucket AlreadyExists – S3 error codes are handles with HTTP error responses. 409 conflict means there is a conflicting issue.

“256” is NOT the correct answer to which of the following? Select all that apply. – What is the maximum S3 bucket name length, in bytes, of a DynamoDB range primary key attribute value?

The maximum size of an S3 object is 5TB.

You attempt to store a new object in the US-STANDARD region in Amazon S3 and receive a confirmation that it has been successfully stored. You then immediately make another API call and attempt to read this object. Will you be able to read this object immediately after? – Yes, US-STANDARD has read-after-write consistency which means you will have access to the object immediately after.

Which DynamoDB API call does not consume capacity units? – UpdateTable – The UpdateTable API call is used to change the required provisioned throughput capacity.

Your items are 6kb in size and you want to have 100 strongly consistent reads per second. How many read capacity units do you need to provision? – 200. – 100 (reads per second)x 2 (6KB/4KB=1.5 round to 2 = 200 read throughput capacity units.

Your app is using SQS to create distributed applications. Your messages need to contain more information than the 256KB SQS limit size allowed. How could you solve this problem? – Store the information in S3 and attach the retrieval information to the message for the application to process.

What is the minimum size of an S3 object? – 0 Bytes.

It is TRUE that DynamoDB supports two types of primary keys, “Hash Type” and “hask and Range Type” primary keys. – These have been more recently renamed to Partition Key and Partition Key and Sort Key, though the exam may not reflect it yet.

You have an EC2 instance deployed with an IAM role with write access permissions to an SQS queue. The instance is attempting to write a 512KB message to an SQS queue. What will the result of this attempt be? – It will fail because it is greater than the 256KB limit for SQS messages.

It is TRUE that one DynamoDB read capacity unit is equal to one strongly consistent read per second. – Strongly consistent reads require more effort and consume twice as many database resources as an eventually consistent read.

Company B provides an online image recognition service and utilizes SQS to decouple system components for scalability. The SQS consumers poll the imaging queue as often as possible to keep end-to-end throughput as high as possible. However, Company B is realizing that polling in tight loops is burning CPU cycles and increasing costs with empty responses. How can Company B reduce the number of empty responses. – Set the imaging queue ReceiveMessageWaitTimeSeconds to 20 seconds. – ReceiveMessageQaiTimeSeconds when set to greater than zero enables long polling.

It is TRUE that a unit of “read capacity” represents one string consistent read per second or two eventually consistent reads per second.

You’ve enabled website hosting on a bucket names “awesomelinux.com” in the US-East-1(US standard region). Select the URL you’ll receive from the AWS URL for the bucket. – awesomelinux.com.s3-website-us-east-1.amazonaws.com. – The default URL for S3 hosted websites lists the bucket name first followed by s3-website-region.amazonaws.com.

Your “forums” table has a primary key of “id”. using DynamoDB, you’re able to query the data based on the id primary key. You need to be able to query the forums table by userid. What would you add to the table during table creation time? – Create a secondary index.

When using the Ref function in CloudFormation, what do we get back if we pass in the logical ID of an AWS::EC2::Instance object? – The object’s InstanceID.

At what file-size should you use multi-part upload? – 100MB.

Default timeout visibility queue is 30 seconds.

Which of the following statements about SQS is true? – Messages will be delivered one or more times and message delivery order is indeterminate.

You created three S3 buckets – “mydomain.com”, downloads.mydomain.com”, and “www.mydomain.com”. You upload your files, enabled static website hosting, specified both of the default documents under the “enable static website hosting” header, and set the “Make Public” permission for the objects in each of the three buckets. All that’s left for you to do it create the Route53 aliases for the three buckets. You are going to have your end users test your websites by browsing to http://mydomain.com/error.html, http://downloads.mydomain.com/index.html, and http://www.mydomain.com. What problems will your testers encounter? – There will be no problems. all three sites should work. – It used to be that the only allowed domain prefix when creating Route53 aliases for S3 static websites was the “www” prefix. However, this is no longer the case. You can now use other sub-domains.

A recent increase in the amount of users of an application hosted on an EC2 instance that you manage has caused the instance’s OS to run out of CPU resources and crash. The crash caused several users’ unsaved data to be lost and your supervisor wants to know how this problem can be avoided in the future. Which of the following would you NOT recommend? – Take frequent snapshots of the EBS volume during business hours to ensure users’ data is backed up.

Each AWS account can own 100 buckets. – AWS accounts are limited to the total number of buckets allowed. Since S3 is a global namespace, the limitation is per account and not per region. The limit cannot be increased upon request to AWS.

It is FALSE that the only SNS notification event supported by S3 is S3:ReducedRedundancyLostObject. – S3 provides the S3:ReducedRedundancyLostObject for objects that are using the ReducedRedundancy Storage class on Amazon S3.

What is the only “required” CloudFormation section in a template? This section is also where you specify what AWS services are used by the template. – Resources.

Which of the following is an incorrect S3 bucket name? – 10.3.181.3 and 1AwesomeLinux.com

You have reached your account limit for the number if CloudFormation stacks in a region. How do you increase your limit? – Contact AWS. – AWS CloudFormation by default allows 20 stacks per region to be running at any given time.

It is TRUE that parts of a multi-part upload will not be completed until the “complete” request has been called which puts all the parts of the file together.

it is FALSE that S3 bucket ownership is transferable. – Bucket ownership is not transferable.

You want 5 strongly consistent 1KB writes per second. How many units of throughput capacity do you need to provision? – 5. – The only option for a write is strongly consistent. Thethroughput units needed to write 5 strongly consistent writes per second of 1KB in size is 5 x 1 = 5.

Which s3 error code does not have a corresponding HTTP 404 status code? – MissingSecurityHeader. – 400 bad request would be the HTTP response code for MissingSecurityHeader.

If you have an item that is 4KB in size and you want to provision read capacity units for 100 requests per second, using strongly consistent reads, how many read capacity units do you need to provision? – 100. 100 x (4/4) = 100.

Your EC2 component receives a message from a message queue. The message will then become invisible for 30 seconds. What API request must be called in order for the VisibilityTimeout not to make the message visible again? – DeleteMessage. – The message will become invisible again if the worker instance that is processing the data in the message does not delete the message after it has been successfully completed.

What is the default limit for CloudFormation templates per region? – There are no limits for the number of templates.

As you retrieve information from DynamoDB, you receive this error: “ProvisionedThroughputExceedsException”, but upon investigation you notice that you’re not exceeding your table read capacity throughput. What is causing this error? – We are exceeding a partitions throughput capacity, even if we’re not exceeding the table throughput capacity.

You want 5 strongly consistent 1KB writes per second. How many units of throughput capacity do you need to provision? – 5 – The only option for a write is strongly consistent. The throughput units need to write 5 strongly consistent writes per second of 1KB in size is 5 x 1 = 5.

A corporate web application is deployed with an Amazon VPC, and is connected to the corporate data center via IPSec VPN. The application must authenticate against the on-premise LDAP server. Once authenticated, logged-in users can only access an S3 keyspace specific to the user. – The application authenticates against LDAP, and retrieves the name of an IAM role associated with the user. The application then calls the IAM Security Token Service to assume that IAM Role. The application can use the temporary credentials to access, develop an identify broker which authenticated against LDAP, and then calls IAM Security Token Service to get IAM federated user credentials. The application calls the identity broker to get IAM federated user credentials with access to the appropriate resources.

Your supervisor is upset about the fact that SNS topics that he subscribed to are now cluttering up his email inbox. How can he stop receiving email from SNS without disrupting other users’ ability to receive email from SNS. – You can delete the subscription from the SNS topic responsible for the emails, He can use the unsubscribe information provided in the emails. – Deleting the topic would cause all message types to cease for this notification. You cannot delete the endpoint from the subscription, but you can delete the subscription from the topic.

By default, AWS allows you to have 256 tables per account, per region.

Which of these CloudFormation snippets of code will return an address that can be used to access our application from our browser if we’re using a resource type of AWS::ElasticLoadBalancing::LoadBalancer with Logical ID “ElasticLoadBalancer”? – “Fn::Join”:[“”,[“http://”,{“Fn::GetAtt”:[“ElasticLoadBalancer”,”DNSName”]}]]. – The answer with “Ref” would return the Elastic Load Balancer physical ID, The [“ElasticLoadBalancer”,”URL”] is not a valid option (it should be EndpointURL instead).

What is the function of a conditional write? – A change to a DynamoDB attribute will only be written if that attributes value has not changed since it was read.

It is TRUE that a benefit of multi-part upload is that you can upload a file as it is being created. – Multi-part upload API allows you to upload parts of an object once broken apart. As a file/object is being created, the multi-part upload API will allow you to upload the file to S3. Only after all parts of the objects have been uploaded do you execute the CompleteMultipartUpload API which completes a multi-part upload by assembling previously uploaded parts.

If your table item’s size is 3KB and you want to have 90 strongly consistent reads per second, how many read capacity units will you need to provision on the table? – 90. – 90 (reads per second) x 3KB/4 (round up to nearest number)=90 minimum capacity units is 4KB in order to calculate required throughput we will need to take th number needed strongly consistent reads (90) and multiply it by the item request size. In order to easily solve that, we take the item size and divide by 4 (4 being the size of a read capacity unit) and round it up.

Your application instance takes 60 seconds to process instructions received in an SQS message. Assuming the SQS queue is configured with the default Visibility Timeout, what is the best way to configure your application to ensure that no other instances retrieve a message that has already been processed or is currently being processed? – Use the ReceiveMessage API call to retrieve the message, the ChangeMessageVisbility API call to increase the visibility timeout, and the DeleteMessage API call to delete the message when processing completes. – The message queue is using the default Visibility Timeout of 30 seconds, but the application takes 60 seconds to process the instructions from the message. It is therefore neccessary to increase the Visibility Timeout of the message to prevent it from becoming visible in the queue for other instances to process while it is still being processed by the first instance. (Another solution could be to increase the visibility timeout of the entire queue.) It is also necessary for the instance to delete the message from the queue once it has finished processing it, otherwise the message will become visible in the queue after the Visibility Timeout expires.

It is FALSE that DynamoDB supports cross table joins. – DynamoDB is a NoSQL database service and does not act like the traditional relational database. Relational databases allow for cross table joins. Due to the schema design of a NoSQL database, you cannot use cross table joins.

Which of the following WILL NOT cause a CloudFormation stack deployment to rollback? – The template contains invalid JSON syntax. – Invalid JSON syntax will cause an error message during template validation. Until the syntax is fixed, the template will not be able to deploy resources, so there will not be a need to or opportunity to rollback.

Since S3 objects are stored lexicographically, by introducing “randomness” to your S3 names it helps S3 storage distribute the I/O load across more than one partition. Given the following examples, how could you add a hashed prefix to the naming convention to increase I/O performance? bucket/2010-26-05-15-00-00/myfolder234234/photo1.jpg & bucket/2010-26-05-15-00-00/myfolder3857422/photo2.jpg – Answer – bucket/8761-2010-26-05-15-00-00/myfolder234234/photo1.jpg

One unit of read capacity is 4KB – and one unit of write capacity is 1KB.

What kind of messages does SNS send to endpoints? – A JSON document with parameters like Message, Signature, Subject, Type – Amazon SNS messages do not publish the source/destination.

Which statement about DynamoDB is true? DynamoDB uses conditional writes for consistency. – DynamoDB allows conditional writes to tables. Conditional writes are only performed if the current attributes of the item meet the specified conditions.

By default, what even occurs if your CloudFormation receives an error during creation? – ROLLBACK_IN_PROGRESS.

You’re creating a forum DynamoDB database for hosting web forums. Your “thread” table contains the forum name and each “forum name” can have one or more “subjects”. What primary key type would you give the thread table in order to allow more than one subject to be tied to the forum primary key name? – Hash and Range.

Which API call would you use to attach an EBS volume to an EC2 instance? – AttachVolume.

It is TRUE that a local secondary index is an index that has the same hash key as the table, but a different range key.

You have software on an EC2 instance that needs to access both the prvate and public IP address of that instance What’s the best way for the software to get that information? – Look it up in instance metadata.

What would you set in your CloudFormation template to fire up different instance sizes based off of environment type? (if this is for prod, use m1.large instead of t1.micro) – conditions.

A taxi company uses a mobile GPS application to track the location o each of their 60 cams. The application records the taxi’s location to a DynamoDB table every 6 seconds. Each transmission is just under 1KB, and throughput is spread evenly within that minute. How many units of write capacity should you specify for this table? – 10. – 60 seconds/ one write per can every 6 seconds = 10 writes per cab per minute. 60 cabs x 10 writes per cab per minute = 600 total writes per minute. 600 total writes per minute /60 seconds = 10 writes per second.

It is TRUE that a DynamoDB item is a collection of name and value attributes.

You have an Amazon S3 bucket that you use to store objects. You’d like to encrypt some of the new objects you upload to this bucket. What header do you need to use in order to request server-side encryption when using the REST API? – x-amz-server-side-encryption.