- Amazon Simple Storage Service is called as Amazon S3
 - Provides easy-to-use management features to organize data and configure access controls.
 - It is designed for 99.999999999% (11 9’s) of durability
 - It is an object storage service
 - Provides 
- Scalability
 
- data availability
 
- security
 
- performance.
 
 - Use cases include 
- Websites
 
- mobile applications
 
- backup and restore
 
- archive
 
- enterprise applications
 
- IoT devices
 
- big data analytics.
 
 
S3 Access control
- defines who can access objects and buckets within S3
 - the access type (as READ and WRITE).
 - authentication verifies the identity of a user who is trying to access AWS
 
Amazon S3 Concepts

Buckets –
- It contains the S3 objects
 - Every object is contained in a bucket.
 - URL addressing, as if object named photos/puppy.jpg stored in johnsmith bucket, then URL is http://johnsmith.s3.amazonaws.com/photos/puppy.jpg
 - Buckets helps to 
- organize the S3 namespace at the highest level
 
- identify the account responsible for storage and data transfer charges
 
- play a role in access control
 
- serve as the unit of aggregation for usage reporting.
 
 - Buckets can be created in a specific region.
 - Bucket configuration can be changed if object is added, every time
 - unique version ID is given to object by S3
 
S3 bucket naming rules
- Name be unique across all present names in S3
 - Should follow DNS naming conventions.
 - Be 3 to 63 characters long.
 - No use of uppercase letter or underscore
 - starts with a lowercase letter or number.
 - Are a series of one or more labels. 
- Adjacent labels separated by period
 
- Only lowercase letters, numbers, and hyphens allowed for label name .
 
- label start and end with lowercase letter or number.
 
 - For DNS notation, bucket names be like an IP address – like 192.168.5.4
 - When you use virtual hosted–style buckets with Secure Sockets Layer (SSL), the SSL wildcard certificate only matches buckets that don’t contain periods.
 
Objects –
- Fundamental entities stored in Amazon S3
 - Consist of object data and metadata.
 - Data stored in has no impact due to S3/storage
 - Metadata refers to 
- set of name-value pairs
 
- it describe the object and
 
- it
has include 
- the date last modified
 
- standard HTTP metadata – Content-Type
 
 
 - custom metadata can be added to object during storage
 - All objects contained in a S3 bucket has
 - version ID
 - name or a key
 
Keys –
- pinpoints uniquely, a object but in the S3 bucket
 - all objects in s3 bucket have only one key
 - Every object in Amazon S3 can be uniquely
addressed as 
- Combination of a bucket, key, and version ID uniquely identify each object
 
- web service endpoint, bucket name, key, and optionally, a version.
 
 - Example, in the URL http://doc.s3.amazonaws.com/2006-03-01/AmazonS3.wsdl, “doc” is the name of the bucket and “2006-03-01/AmazonS3.wsdl” is the key.
 
Regions
- You can choose the geographical region where S3 will store the buckets you create.
 - Choose a region to 
- optimize latency
 
- minimize costs
 
- address regulatory requirements
 
 - Objects stored in a region always remain in the region but, can be explicitly transferred to another region.
 
Amazon S3 Data Consistency Model –
- S3 provides read-after-write consistency for PUTS of new objects in S3 bucket in all regions with one caveat.
 - The caveat is that if you make a HEAD or GET request to the key name (to find if the object exists) before creating the object, Amazon S3 provides eventual consistency for read-after-write.
 - eventual consistency is present in all regions,
for 
- overwrite PUTS
 
- DELETES
 
 - Updates to a single key are atomic. Hence, every time PUT to an existing key, does not gives corrupted or partial data.
 - High data availability is offered by replicating data
 - Successful PUT indicates safe storage of data
 - behavior about changes
- New object written to S3 and is immediately listed within the S3 bucket. But object is not listed till addition is fully propagated
 
- existing object is replaced and again read, S3 gives prior data till change is fully propagated
 
- existing object is deleted but S3 gives deleted data till change is fully propagated
 
 
AWS Certified Developer - Associate Free Practice TestTake a Quiz
		