SlideShare a Scribd company logo
1 of 109
Masterclass
Amazon S3 – beyond simple storage
     Ryan Shuttleworth – Technical Evangelist
                  @ryanAWS
Masterclass

                       A technical deep dive beyond the basics
Help educate you on how to get the best from AWS technologies
         Show you how things work and how to get things done
                          Broaden your knowledge in ~45 mins
Amazon S3

           It’s more than just a ‘simple’ storage platform
          A sophisticated 21st century distributed system
A bedrock architectural component for many applications
“Spotify needed a storage solution that
  could scale very quickly without incurring
long lead times for upgrades. This led us to
 cloud storage, and in that market, Amazon
  Simple Storage Service (Amazon S3) is the
          most mature large-scale product.

      Amazon S3 gives us confidence in our
ability to expand storage quickly while also
             providing high data durability.”
                 Emil Fredriksson, Operations Director
You put it in S3
AWS stores with 99.999999999% durability
Highly scalable web
                      access to objects




     You put it in S3
AWS stores with 99.999999999% durability


Multiple redundant
copies in a region
but it’s more than just a
  simple storage service
Objects in S3


  1500.000                                           1.3 Trillion
  1250.000
  1000.000
   750.000
   500.000
   250.000
     0.000



                835k+ peak transactions per second
Highly scalable data storage


A web store, not a file system                                  Access via APIs



                             What is S3?
              Fast                                              Economical

                                 Highly available & durable
A web store, not a file system



                     Write once,
                     read many
                     (WORM)
 Eventually
 consistent
A web store, not a file system


                                             Load balancers                                     Load balancers
                               Write once,
                               read many
                                             Web servers                                           Web servers
                               (WORM)
             Eventually
             consistent

                                               Indexing         Storage            Indexing         Storage
                                                   Availability Zone                   Availability Zone

                                                                          Region


Conceptual diagram only
A web store, not a file system


                                             Load balancers                                     Load balancers
                               Write once,
                               read many
                                             Web servers                                           Web servers
                               (WORM)
             Eventually
             consistent

                                               Indexing         Storage            Indexing         Storage
                                                   Availability Zone                   Availability Zone

                                                                          Region


Conceptual diagram only
A web store, not a file system


                                             Load balancers                                     Load balancers
                               Write once,
                               read many
                                             Web servers                                           Web servers
                               (WORM)
             Eventually
             consistent

                                               Indexing         Storage            Indexing         Storage
                                                   Availability Zone                   Availability Zone

                                                                          Region


Conceptual diagram only
A web store, not a file system


                                             Load balancers                                     Load balancers
                               Write once,
                               read many
                                             Web servers                                           Web servers
                               (WORM)
             Eventually
             consistent

                                               Indexing         Storage            Indexing         Storage
                                                   Availability Zone                   Availability Zone

                                                                          Region


Conceptual diagram only
A web store, not a file system


                                             Load balancers                                     Load balancers
                               Write once,
                               read many
                                             Web servers                                           Web servers
                               (WORM)
             Eventually
             consistent

                                               Indexing         Storage            Indexing         Storage
                                                   Availability Zone                   Availability Zone

                                                                          Region


Conceptual diagram only
A web store, not a file system


                                             Load balancers                                     Load balancers
                               Write once,
                               read many
                                             Web servers                                           Web servers
                               (WORM)
             Eventually
             consistent

                                               Indexing         Storage            Indexing         Storage
                                                   Availability Zone                   Availability Zone

                                                                          Region


Conceptual diagram only
A web store, not a file system


                                             Load balancers                                     Load balancers
                               Write once,
                               read many
                                             Web servers                                           Web servers
                               (WORM)
             Eventually
             consistent

                                               Indexing         Storage            Indexing         Storage
                                                   Availability Zone                   Availability Zone

                                                                          Region


Conceptual diagram only
A web store, not a file system


                                             Load balancers                                     Load balancers
                               Write once,
                               read many
                                             Web servers                                           Web servers
                               (WORM)
             Eventually
             consistent

                                               Indexing         Storage            Indexing         Storage
                                                   Availability Zone                   Availability Zone

                                                                          Region


Conceptual diagram only
A web store, not a file system



                               Write once,
                               read many
                               (WORM)
             Eventually
             consistent




Conceptual diagram only
New objects
                                            Synchronously stores your data across multiple
                                            facilities before returning SUCCESS
         A web store, not a file system     Read-after-write consistency*


                                            Updates
                              Write once,   Write then read: could report key does not exist
                              read many     Write then list: might not include key in list
                              (WORM)
                                            Overwrite then read: old data could be returned
             Eventually
             consistent
                                            Deletes
                                            Delete then read: could still get old data
                                            Delete then list: deleted key could be included in
                                            list
*except US-STANDARD region
A regional service
Your data never leaves a region unless you move it
Storage classes
Controlling the way S3 holds your data
Amazon S3 storage classes



       Standard
     Designed to provide
99.999999999% durability and
 99.99% availability of objects
      over a given year
   Designed to sustain the
concurrent loss of data in two
          facilities
Amazon S3 storage classes


                                        Reduced
       Standard                    Redundancy Storage
     Designed to provide            Reduces costs by storing data at
99.999999999% durability and        lower levels of redundancy than
 99.99% availability of objects          the Standard storage
      over a given year
                                      Designed to provide 99.99%
   Designed to sustain the          durability and 99.99% availability
concurrent loss of data in two        of objects over a given year
          facilities
Amazon S3 storage classes


                                        Reduced
       Standard                    Redundancy Storage                                Glacier
     Designed to provide            Reduces costs by storing data at      Suitable for archiving data, where
99.999999999% durability and        lower levels of redundancy than         data access is infrequent and a
 99.99% availability of objects          the Standard storage              retrieval time of several hours is
      over a given year                                                                acceptable
                                      Designed to provide 99.99%
   Designed to sustain the          durability and 99.99% availability      Uses the very low-cost Amazon
concurrent loss of data in two        of objects over a given year       Glacier storage service, but managed
          facilities                                                              through Amazon S3
Amazon S3 storage classes


                                   Reduced
      Standard                Redundancy Storage                              Glacier
   Designed to provide        Reduces costs by storing data          Suitable for archiving data,
99.999999999%want to
  Objects you durability      at lower levels can afford to
                              Objects you of redundancy            where data access is infrequent
                                                                   Objects you want to keep
and 99.99% availability of      than the Standard storage           and a retrieval time of several
  have high durability            lose or can recreate              in archive for a long time
 objects over a given year     Designed to provide 99.99%                hours is acceptable
 Designed to sustain the
 e.g. master copy of movie     e.g. durability and 99.99%
                                    different encodings of movie   e.g. digital very low-cost Amazon
                                                                   Uses the archive of old movies &
concurrent loss of data in
          media                availability of objects over a
                                              media                  Glacier storage service, but
                                                                                 broadcasts
       two facilities                      given year               managed through Amazon S3
Namespaces
Object naming, buckets and keys
Amazon S3 namespace



Globally unique


bucket name + object name (key)
Amazon S3 namespace

                            Amazon S3

         bucket                                      bucket


object            object                   object             object


                                  bucket


                   object                           object
Amazon S3 namespace

                              Amazon S3

     jones-docshare                                media.mydomain.com


beach.jpg        drafts/rpt.doc                  img1.jpg          style.css


                                      yourdomain.com


                swf/mediaplayer.swf                    img/banner1.jpg
Amazon S3 namespace


    Object key



  Unique with a bucket
Amazon S3 namespace


                           Object key


Max 1024 bytes UTF-8                            Including ‘path’ prefixes
                         Unique with a bucket
Amazon S3 namespace


                           Object key


Max 1024 bytes UTF-8                              Including ‘path’ prefixes
                         Unique with a bucket



          assets/js/jquery/plugins/jtables.js


                          this is an object key
Throughput optimisation


   S3 automatically partitions based upon key prefix:
Bucket:          Object keys:
mynewgame        2134857/gamedata/start.png
2134857/g
                 amedata/resource.rsrc
2134857/gameda
                 ta/results.txt
2134858/gamedata/star
                 t.png
2134858/gamedata/resource.rsrc
                 
2134858/gamedata/results.txt
213485
                 9/gamedata/start.png
2134859/gamedat
                 a/resource.rsrc
2134859/gamedata/res
                 ults.txt
Throughput optimisation


   S3 automatically partitions based upon key prefix:
Bucket:              Object keys:
mynewgame            2134857/gamedata/start.png
2134857/g
                     amedata/resource.rsrc
2134857/gameda
                     ta/results.txt
2134858/gamedata/star
                     t.png
2134858/gamedata/resource.rsrc
                     
2134858/gamedata/results.txt
213485
                     9/gamedata/start.png
2134859/gamedat
      Incrementing   a/resource.rsrc
2134859/gamedata/res
         game id     ults.txt
Throughput optimisation


   S3 automatically partitions based upon key prefix:
Bucket:                Object keys:
mynewgame              2134857/gamedata/start.png
2134857/g
                       amedata/resource.rsrc
2134857/gameda
                       ta/results.txt
2134858/gamedata/star
                       t.png
2134858/gamedata/resource.rsrc
                       
2134858/gamedata/results.txt
213485
                       9/gamedata/start.png
2134859/gamedat
          Partition:
                       a/resource.rsrc
2134859/gamedata/res
    mynewgame/2
                       ults.txt
Throughput optimisation


   S3 automatically partitions based upon key prefix:
Bucket:             Object keys:
mynewgame           7584312/gamedata/start.png
7584312/g
                    amedata/resource.rsrc
7584312/gameda
                    ta/results.txt
8584312/gamedata/star
                    t.png
8584312/gamedata/resource.rsrc
                    
8584312/gamedata/results.txt
958431
                    2/gamedata/start.png
9584312/gamedat
    Reversed game   a/resource.rsrc
9584312/gamedata/res
         ID         ults.txt
Throughput optimisation


   S3 automatically partitions based upon key prefix:
Bucket:             Object keys:
mynewgame           7584312/gamedata/start.png
7584312/g
                    amedata/resource.rsrc
7584312/gameda
                    ta/results.txt
8584312/gamedata/star
                    t.png
8584312/gamedata/resource.rsrc
                    
8584312/gamedata/results.txt
958431
      Partitions:   2/gamedata/start.png
9584312/gamedat
    mynewgame/7     a/resource.rsrc
9584312/gamedata/res
    mynewgame/8     ults.txt
    mynewgame/9
Encryption
Securing data at rest
Automatic encryption of
                        data at rest
  Simple
Additional PUT                                         Durable
   header                                            S3 key storage



              Server side encryption
   Strong                                                Secure
    AES-256                                         3-way simultaneous
                                                          access
                          Self managed
                    No need to manage a key store
Server side encryption



                    Data                     bucket




High level design
Server side encryption



                                            Encrypted object
                    Data                                       bucket   Encrypted data




                           Per-object key




High level design
Server side encryption



                                            Encrypted object
                    Data                                       bucket   Encrypted data



                                                                          Encrypted
                                                                        per-object key
                           Per-object key




                                             Master key


High level design
Server side encryption



                                            Encrypted object
                    Data                                       bucket    Encrypted data



                                                                            Encrypted
                                                                          per-object key
                           Per-object key


                                                                         Key management
                                                                        (monthly rotation)
                                             Master key


High level design
Access controls
You’re in control of who does what
You decide what to share
                                         Apply policies to buckets and objects




          Secure by default

     Policies, ACLs & IAM
Use S3 policies, ACLs or IAM to define
                 rules
IAM
        Fine grained
 Administer as part of
  role based access
 Apply policies to S3 at
role, user & group level


Allow

Actions
PutObject
Resource
arn:aws:s3:::mybucket/*


    Bob           Jane
IAM            VS        Bucket Policies
        Fine grained                    Fine grained
 Administer as part of          Apply policies at the bucket
  role based access                     level in S3
 Apply policies to S3 at        Incorporate user restrictions
role, user & group level             without using IAM


Allow                             Allow
                                  Bob, Jane
Actions                           Actions
PutObject                         PutObject
Resource                          Resource
arn:aws:s3:::mybucket/*           arn:aws:s3:::mybucket/*


    Bob           Jane                        mybucket
IAM            VS        Bucket Policies            VS           ACLs
        Fine grained                    Fine grained                     Coarse grained
 Administer as part of          Apply policies at the bucket           Apply access control
  role based access                     level in S3                     rules at the bucket
 Apply policies to S3 at        Incorporate user restrictions        and/or object level in S3
role, user & group level             without using IAM


Allow                             Allow                          Allow
                                  Bob, Jane                      Everyone, Bob, Jane
Actions                           Actions                        Actions
PutObject                         PutObject                      Read
Resource                          Resource
arn:aws:s3:::mybucket/*           arn:aws:s3:::mybucket/*


    Bob           Jane                        mybucket                mybucket      myobject
Access controls – bucket policy

{"Statement":[{

         "Effect":"Allow",

         "Principal":{"AWS":["4649-6425", "5243-0045"]},

         "Action":"*",

         "Resource":"/mybucket/*",

          "Condition":{

            "IpAddress":{"AWS:SourceIp":"176.13.0.0/12"}

}}]}
Access controls – bucket policy

{"Statement":[{                  Accounts to allow
         "Effect":"Allow",

         "Principal":{"AWS":["4649-6425", "5243-0045"]},

         "Action":"*",

         "Resource":"/mybucket/*",

          "Condition":{

            "IpAddress":{"AWS:SourceIp":"176.13.0.0/12"}

}}]}
Access controls – bucket policy

{"Statement":[{

         "Effect":"Allow",

         "Principal":{"AWS":["4649-6425", "5243-0045"]},

         "Action":"*",

         "Resource":"/mybucket/*",       Resource
          "Condition":{

            "IpAddress":{"AWS:SourceIp":"176.13.0.0/12"}

}}]}
Access controls – bucket policy

{"Statement":[{

         "Effect":"Allow",

         "Principal":{"AWS":["4649-6425", "5243-0045"]},

         "Action":"*",

         "Resource":"/mybucket/*",

          "Condition":{

            "IpAddress":{"AWS:SourceIp":"176.13.0.0/12"}

}}]}

                         Source address to allow
Transitions & Lifecycle
    Management
 Automated management of objects
Lifecycle management
Object deletion
Permanently delete objects from S3




 Lifecycle management
Object deletion
Permanently delete objects from S3




 Lifecycle management

                                     Object archiving
                            Move objects to Glacier and out of S3
                                          storage
Glacier
Long term durable archive
Durable
                                             Designed for 99.999999999%
                                                 durability of archives




Long term Glacier archive

            Cost effective
Write-once, read-never. Cost effective for
long term storage. Pay for accessing data
Expiry




         Logs
                accessible from S3




                                     time
✗
Expiry




         Logs
                accessible from S3

                                       Objects
                                     expire and
                                     are deleted

                                                   time
Object
                                      transition to
Transition

                                     Glacier invoked
                    accessible from S3
             Txns




                                           ✗
Expiry




             Logs
                    accessible from S3

                                           Objects
                                         expire and
                                         are deleted

                                                       time
Object         Restoration of
                                      transition to    object requested
Transition

                                     Glacier invoked       for x hrs
                    accessible from S3
             Txns




                                           ✗
Expiry




             Logs
                    accessible from S3

                                           Objects
                                         expire and
                                         are deleted

                                                                          time
Object         Restoration of
                                      transition to    object requested
Transition

                                     Glacier invoked       for x hrs         Object held in S3
                    accessible from S3                                        RRS for x hrs
             Txns
                                                                    3-5hrs




                                           ✗
Expiry




             Logs
                    accessible from S3

                                           Objects
                                         expire and
                                         are deleted

                                                                                                 time
3-5 hour retrieval time
 We assume you won’t access often
using (client = new AmazonS3Client()){
  var lifeCycleConfiguration = new LifecycleConfiguration()
  {
    Rules = new List<LifecycleRule>
    {
        new LifecycleRule
        {
             Id = "Archive and delete rule",
             Prefix = "projectdocs/",
             Status = LifecycleRuleStatus.Enabled,
              Transition = new LifecycleTransition()
              {
                   Days = 365,
                   StorageClass = S3StorageClass.Glacier
              },
              Expiration = new LifecycleRuleExpiration()
              {
                   Days = 3650
              }
        }
    }
  };
using (client = new AmazonS3Client()){
  var lifeCycleConfiguration = new LifecycleConfiguration()
  {
    Rules = new List<LifecycleRule>
    {
        new LifecycleRule
        {                                                 Transition to
             Id = "Archive and delete rule",
             Prefix = "projectdocs/",                    Glacier after 1
             Status = LifecycleRuleStatus.Enabled,            year
              Transition = new LifecycleTransition()
              {
                   Days = 365,
                   StorageClass = S3StorageClass.Glacier
              },
              Expiration = new LifecycleRuleExpiration()
              {
                   Days = 3650
              }
        }
    }
  };
using (client = new AmazonS3Client()){
  var lifeCycleConfiguration = new LifecycleConfiguration()
  {
    Rules = new List<LifecycleRule>
    {
        new LifecycleRule
        {
             Id = "Archive and delete rule",
             Prefix = "projectdocs/",
             Status = LifecycleRuleStatus.Enabled,
              Transition = new LifecycleTransition()          Delete object
              {
                   Days = 365,                                after 10 years
                   StorageClass = S3StorageClass.Glacier
              },
              Expiration = new LifecycleRuleExpiration()
              {
                   Days = 3650
              }
        }
    }
  };
POST /ObjectName?restore HTTP/1.1
Host: BucketName.s3.amazonaws.com
Date: date
Authorization: signatureValue
Content-MD5: MD5

<RestoreRequest xmlns="http://s3.amazonaws.com/doc/2006-3-01">
   <Days>NumberOfDays</Days>
</RestoreRequest>
POST /ObjectName?restore HTTP/1.1
Host: BucketName.s3.amazonaws.com
Date: date
Authorization: signatureValue
Content-MD5: MD5

<RestoreRequest xmlns="http://s3.amazonaws.com/doc/2006-3-01">
   <Days>NumberOfDays</Days>
</RestoreRequest>

Response codes:
202 Accepted      Restore request accepted

200 OK            Object already restored, number of days updated

409 Conflict      Restoration already in progress
Website hosting
Static sites straight from S3
It’s a web service…
…so serve up web content
Setting default documents




        Redirecting requests
{
    "Version":"2008-10-17",
    "Statement":[{
      "Sid":"PublicReadGetObject",
            "Effect":"Allow",
         "Principal": {
                "AWS": "*"
             },
          "Action":["s3:GetObject"],
          "Resource":["arn:aws:s3:::example-bucket/*"
          ]
       }
    ]
}
Website addressing

{bucket-name}.s3-website-{region}.amazonaws.com
e.g. mybucket.s3-website-eu-west-1.amazonaws.com


Normal addressing


s3-{region}.amazonaws.com/{bucket-name}/{object-key}
e.g. s3-eu-west-1.amazonaws.com/mybucket/img.png

{bucket-name}.s3-{region}.amazonaws.com/{object-key}
e.g. mybucket.s3-eu-west-1.amazonaws.com/img.png
Record set for:
aws-examples.info


       R53
Record set for:
                        aws-examples.info


                               R53




                                                           Index.    Error.
               bucket                          bucket       html     html


 Website bucket name:                         Website bucket name:
www.aws-examples.info                         aws-examples.info
Record set for:
                        aws-examples.info


                                 R53




                                                              Index.    Error.
               bucket                             bucket       html     html
                          Website redirect to:
                          aws-examples.info
 Website bucket name:                            Website bucket name:
www.aws-examples.info                            aws-examples.info
Record set for:
                        aws-examples.info

                                          A Record ‘Alias’ to S3 website:
                                 R53      aws-examples.info @ s3-website-eu-
                                          west-1.amazonaws.com




                                                                    Index.   Error.
               bucket                                 bucket         html    html
                          Website redirect to:
                          aws-examples.info
 Website bucket name:                                Website bucket name:
www.aws-examples.info                                aws-examples.info
Record set for:
                           aws-examples.info

            CNAME for www. to:               A Record ‘Alias’ to S3 website:
      www.aws-examples.info.s3-     R53      aws-examples.info @ s3-website-eu-
website-eu-west-1.amazonaws.com              west-1.amazonaws.com




                                                                       Index.   Error.
               bucket                                    bucket         html    html
                             Website redirect to:
                             aws-examples.info
 Website bucket name:                                   Website bucket name:
www.aws-examples.info                                   aws-examples.info
Object versioning
 Preserving object histories
Bucket level             Persistent
Automatically preserves   Even deleted object
  all copies of objects      history is held
>>>   import boto
>>>   conn = boto.connect_s3()
>>>   from boto.s3.bucket import Bucket
>>>   from boto.s3.key import Key
>>>   bucket = conn.get_bucket(’mybucket')

>>> versions = bucket.list_versions()
>>> for version in versions:
...     print version.name + version.version_id
...
>>>   import boto
>>>   conn = boto.connect_s3()
>>>   from boto.s3.bucket import Bucket
>>>   from boto.s3.key import Key
>>>   bucket = conn.get_bucket(’mybucket')

>>> versions = bucket.list_versions()
>>> for version in versions:
...     print version.name + version.version_id   Object
...                                               version
                                                    IDs
myfile.txt jU9eVv800OlP4PQx6zskMEyPIoExne57
myfile.txt xOJzMvMmGv0Bx2v4QpIypbkkH2XE2yyq
myfile.txt 8cjozv9Hmkzum8xj.8q8BZxR5CuXnzon
>>> key = bucket.get_key('myfile.txt',
version_id='8cjozv9Hmkzum8xj.8q8BZxR5CuXnzon’)
>>> key.get_contents_as_string()

'this is version 1 of my file’
                                             Grabbing the
                                             contents of a
                                                version
>>> key = bucket.get_key('myfile.txt',
version_id='8cjozv9Hmkzum8xj.8q8BZxR5CuXnzon’)
>>> key.get_contents_as_string()

'this is version 1 of my file’

>>> key = bucket.get_key('myfile.txt',
version_id='xOJzMvMmGv0Bx2v4QpIypbkkH2XE2yyq’)
>>> key.get_contents_as_string()

'this is version 2 of my file’
>>> key = bucket.get_key('myfile.txt',
version_id='8cjozv9Hmkzum8xj.8q8BZxR5CuXnzon’)
>>> key.get_contents_as_string()

'this is version 1 of my file’

>>> key = bucket.get_key('myfile.txt',
version_id='xOJzMvMmGv0Bx2v4QpIypbkkH2XE2yyq’)
>>> key.get_contents_as_string()
                                        Generating a ’10
'this is version 2 of my file’        minute time bombed’
                                        url for an older
>>> key.generate_url(600)                    version
'https://mybucket.s3.amazonaws.com/myfile.txt?Signature=
ABCD&Expires=1358857379&AWSAccessKeyId=AB&
versionId=xOJzMvMmGv0Bx2v4QpIypbkkH2XE2yyq'
Error response: link
      expired
Metadata
System and user generated
System metadata

                      Name        Description                                                          Editable?
                          Date    Object creation date                                                    No

                Content-Length    Object size in bytes                                                    No

                 Content-MD5      Base64 encoded 128bit MD5 digest                                        No

  x-amz-server-side-encryption    Server side encryption enabled for object                               Yes

              x-amz-version-id    Object version                                                          No

          x-amz-delete-marker     Indicates a version enabled object is deleted                           No

            x-amz-storage-class   Storage class for the object                                            Yes

x-amz-website-redirect-location   Redirects request for the object to another object or external URL      Yes
User metadata




Key-value pairs stored with objects and returned with requests

x-amz-meta-{your metadata key in here}
>>> key.set_metadata(’my_tag', ’my metadata')

>>> key.get_metadata(’my_tag')
’my metadata'
Cloud Front
Delivery from global edge locations
Download
                                      Enable static and dynamic assets to be
                                           served from edge locations




Global content distribution

             Streaming
 Serve RTMP directly from media files in
               buckets
S3 Bucket




Cache control      Forwarding


                 Optional CNAME

Edge access
 controls
S3 Bucket




                            Optional CNAME

Logging to S3
Content
Download
                                                    distribution

<html>
<script type='text/javascript'
src=’http://d2ew7gdzogp20x.cloudfront.net/jwplayer/jwplayer.js'></script>

<body>
<div id='player'></div>
<script type='text/javascript'>
  jwplayer('player').setup({
    file: "rtmp://s1eat02wfxn38u.cloudfront.net/cfx/st/montage-medium.mp4",
    width: "480",
    height: "270",
  });
</script>
                                                  Streaming
</body>                                          distribution
</html>
Summary
Stop doing these:
          Capacity planning
      Management of storage
Worrying about backing up the backup
       Fixing broken hardware
Bootstrapping
                            Store scripts and drive EC2   Backups & archive
Application backends           instances on startup        Storage gateway, 3rd
 Incorporate S3 SDKs into
                                                                party tools
     your applications




              and start doing these

  Application logs                                           Documentation
 Store logs and analyse         Web content                Store documents with
        with EMR                                           versioning and security
                               Serve content and
                                                                   models
                               distribute globally
aws.amazon.com

More Related Content

What's hot

Introduction to Amazon Web Services by i2k2 Networks
Introduction to Amazon Web Services by i2k2 NetworksIntroduction to Amazon Web Services by i2k2 Networks
Introduction to Amazon Web Services by i2k2 Networksi2k2 Networks (P) Ltd.
 
AWS Presentation
AWS PresentationAWS Presentation
AWS Presentationjlechowicz
 
Cloud computing with AWS
Cloud computing with AWS Cloud computing with AWS
Cloud computing with AWS ikanow
 
Aws 101 A walk-through the aws cloud (2013)
Aws 101  A walk-through the aws cloud (2013)Aws 101  A walk-through the aws cloud (2013)
Aws 101 A walk-through the aws cloud (2013)Martin Yan
 
AWS 101, London - September 2014
AWS 101, London - September 2014AWS 101, London - September 2014
AWS 101, London - September 2014Ian Massingham
 
Keynote: Your Future With Cloud Computing - Dr. Werner Vogels - AWS Summit 2...
Keynote: Your Future With Cloud Computing - Dr. Werner Vogels  - AWS Summit 2...Keynote: Your Future With Cloud Computing - Dr. Werner Vogels  - AWS Summit 2...
Keynote: Your Future With Cloud Computing - Dr. Werner Vogels - AWS Summit 2...Amazon Web Services
 
2009.11.20 BPstudy#27 Amazon Web Service
2009.11.20 BPstudy#27 Amazon Web Service2009.11.20 BPstudy#27 Amazon Web Service
2009.11.20 BPstudy#27 Amazon Web ServiceHiro Fukami
 
Webinar aws 101 a walk through the aws cloud- introduction to cloud computi...
Webinar aws 101   a walk through the aws cloud- introduction to cloud computi...Webinar aws 101   a walk through the aws cloud- introduction to cloud computi...
Webinar aws 101 a walk through the aws cloud- introduction to cloud computi...Amazon Web Services
 
Aws for Start-ups - Introduction & AWS Overview
Aws for Start-ups  - Introduction & AWS OverviewAws for Start-ups  - Introduction & AWS Overview
Aws for Start-ups - Introduction & AWS OverviewAmazon Web Services
 
AWS Architecting for the Cloud - matt tavis
AWS Architecting for the Cloud - matt tavisAWS Architecting for the Cloud - matt tavis
AWS Architecting for the Cloud - matt tavisAmazon Web Services
 
AWS Webcast - Discover Cloud Computing
AWS Webcast - Discover Cloud ComputingAWS Webcast - Discover Cloud Computing
AWS Webcast - Discover Cloud ComputingAmazon Web Services
 

What's hot (20)

Introduction to Amazon Web Services by i2k2 Networks
Introduction to Amazon Web Services by i2k2 NetworksIntroduction to Amazon Web Services by i2k2 Networks
Introduction to Amazon Web Services by i2k2 Networks
 
Introduction to AWS tools
Introduction to AWS toolsIntroduction to AWS tools
Introduction to AWS tools
 
AWS Presentation
AWS PresentationAWS Presentation
AWS Presentation
 
Cloud computing with AWS
Cloud computing with AWS Cloud computing with AWS
Cloud computing with AWS
 
Aws 101 A walk-through the aws cloud (2013)
Aws 101  A walk-through the aws cloud (2013)Aws 101  A walk-through the aws cloud (2013)
Aws 101 A walk-through the aws cloud (2013)
 
AWS 101, London - September 2014
AWS 101, London - September 2014AWS 101, London - September 2014
AWS 101, London - September 2014
 
Keynote: Your Future With Cloud Computing - Dr. Werner Vogels - AWS Summit 2...
Keynote: Your Future With Cloud Computing - Dr. Werner Vogels  - AWS Summit 2...Keynote: Your Future With Cloud Computing - Dr. Werner Vogels  - AWS Summit 2...
Keynote: Your Future With Cloud Computing - Dr. Werner Vogels - AWS Summit 2...
 
Technical Track
Technical TrackTechnical Track
Technical Track
 
The New World of IT
The New World of ITThe New World of IT
The New World of IT
 
Amazon web service
Amazon web service Amazon web service
Amazon web service
 
2009.11.20 BPstudy#27 Amazon Web Service
2009.11.20 BPstudy#27 Amazon Web Service2009.11.20 BPstudy#27 Amazon Web Service
2009.11.20 BPstudy#27 Amazon Web Service
 
What is AWS?
What is AWS?What is AWS?
What is AWS?
 
Aws over view_demoppt
Aws over view_demopptAws over view_demoppt
Aws over view_demoppt
 
Getting Started on AWS
Getting Started on AWS Getting Started on AWS
Getting Started on AWS
 
Aws overview
Aws overviewAws overview
Aws overview
 
Webinar aws 101 a walk through the aws cloud- introduction to cloud computi...
Webinar aws 101   a walk through the aws cloud- introduction to cloud computi...Webinar aws 101   a walk through the aws cloud- introduction to cloud computi...
Webinar aws 101 a walk through the aws cloud- introduction to cloud computi...
 
Aws for Start-ups - Introduction & AWS Overview
Aws for Start-ups  - Introduction & AWS OverviewAws for Start-ups  - Introduction & AWS Overview
Aws for Start-ups - Introduction & AWS Overview
 
AWS Services Overview - Ryland
AWS Services Overview - RylandAWS Services Overview - Ryland
AWS Services Overview - Ryland
 
AWS Architecting for the Cloud - matt tavis
AWS Architecting for the Cloud - matt tavisAWS Architecting for the Cloud - matt tavis
AWS Architecting for the Cloud - matt tavis
 
AWS Webcast - Discover Cloud Computing
AWS Webcast - Discover Cloud ComputingAWS Webcast - Discover Cloud Computing
AWS Webcast - Discover Cloud Computing
 

Viewers also liked

Enterprise 2.0 Summit 2012 Closing Keynote - Next-Generation Ecosystems And i...
Enterprise 2.0 Summit 2012 Closing Keynote - Next-Generation Ecosystems And i...Enterprise 2.0 Summit 2012 Closing Keynote - Next-Generation Ecosystems And i...
Enterprise 2.0 Summit 2012 Closing Keynote - Next-Generation Ecosystems And i...Dion Hinchcliffe
 
Architectures for open and scalable clouds
Architectures for open and scalable cloudsArchitectures for open and scalable clouds
Architectures for open and scalable cloudsRandy Bias
 
2012 Future of Cloud Computing
2012 Future of Cloud Computing 2012 Future of Cloud Computing
2012 Future of Cloud Computing Michael Skok
 
Leaders in the Cloud: Identifying Cloud Business Value for Customers
Leaders in the Cloud: Identifying Cloud Business Value for CustomersLeaders in the Cloud: Identifying Cloud Business Value for Customers
Leaders in the Cloud: Identifying Cloud Business Value for CustomersOpSource
 
Getting Started with Amazon CloudSearch
Getting Started with Amazon CloudSearchGetting Started with Amazon CloudSearch
Getting Started with Amazon CloudSearchAmazon Web Services
 
Google App Engine for Business 101
Google App Engine for Business 101Google App Engine for Business 101
Google App Engine for Business 101Chris Schalk
 
Zuora @ AlwaysOn 2012 - The Only 3 SaaS Metrics That Matter
Zuora @ AlwaysOn 2012 - The Only 3 SaaS Metrics That MatterZuora @ AlwaysOn 2012 - The Only 3 SaaS Metrics That Matter
Zuora @ AlwaysOn 2012 - The Only 3 SaaS Metrics That MatterZuora, Inc.
 
Cloud Computing – Time for delivery. The question is not “if”, but “how, whe...
Cloud Computing – Time for delivery.  The question is not “if”, but “how, whe...Cloud Computing – Time for delivery.  The question is not “if”, but “how, whe...
Cloud Computing – Time for delivery. The question is not “if”, but “how, whe...Capgemini
 
Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?John Musser
 
Architecting for the Cloud: demo and best practices, by Simone Brunozzi (2011...
Architecting for the Cloud: demo and best practices, by Simone Brunozzi (2011...Architecting for the Cloud: demo and best practices, by Simone Brunozzi (2011...
Architecting for the Cloud: demo and best practices, by Simone Brunozzi (2011...Amazon Web Services
 
Future of cloud computing linthicum
Future of cloud computing linthicumFuture of cloud computing linthicum
Future of cloud computing linthicumDavid Linthicum
 
Journey Through the AWS Cloud; Development and Test
Journey Through the AWS Cloud; Development and TestJourney Through the AWS Cloud; Development and Test
Journey Through the AWS Cloud; Development and TestAmazon Web Services
 
AWS for Media: Content in the Cloud, Miles Ward (Amazon Web Services) and Bha...
AWS for Media: Content in the Cloud, Miles Ward (Amazon Web Services) and Bha...AWS for Media: Content in the Cloud, Miles Ward (Amazon Web Services) and Bha...
AWS for Media: Content in the Cloud, Miles Ward (Amazon Web Services) and Bha...Amazon Web Services
 
Cloud Computing Integration Introduction
Cloud Computing Integration IntroductionCloud Computing Integration Introduction
Cloud Computing Integration Introductiontoryharis
 
Open source and standards - unleashing the potential for innovation of cloud ...
Open source and standards - unleashing the potential for innovation of cloud ...Open source and standards - unleashing the potential for innovation of cloud ...
Open source and standards - unleashing the potential for innovation of cloud ...Ignacio M. Llorente
 
Scaling the Cloud - Cloud Security
Scaling the Cloud - Cloud SecurityScaling the Cloud - Cloud Security
Scaling the Cloud - Cloud SecurityBill Burns
 
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...LicensingLive! - SafeNet
 
High Performance Web Applications
High Performance Web ApplicationsHigh Performance Web Applications
High Performance Web ApplicationsAmazon Web Services
 
Cloud Computing for Enterprise Architects
Cloud Computing for Enterprise ArchitectsCloud Computing for Enterprise Architects
Cloud Computing for Enterprise ArchitectsJean-François Caenen
 

Viewers also liked (20)

Enterprise 2.0 Summit 2012 Closing Keynote - Next-Generation Ecosystems And i...
Enterprise 2.0 Summit 2012 Closing Keynote - Next-Generation Ecosystems And i...Enterprise 2.0 Summit 2012 Closing Keynote - Next-Generation Ecosystems And i...
Enterprise 2.0 Summit 2012 Closing Keynote - Next-Generation Ecosystems And i...
 
Architectures for open and scalable clouds
Architectures for open and scalable cloudsArchitectures for open and scalable clouds
Architectures for open and scalable clouds
 
2012 Future of Cloud Computing
2012 Future of Cloud Computing 2012 Future of Cloud Computing
2012 Future of Cloud Computing
 
Leaders in the Cloud: Identifying Cloud Business Value for Customers
Leaders in the Cloud: Identifying Cloud Business Value for CustomersLeaders in the Cloud: Identifying Cloud Business Value for Customers
Leaders in the Cloud: Identifying Cloud Business Value for Customers
 
Getting Started with Amazon CloudSearch
Getting Started with Amazon CloudSearchGetting Started with Amazon CloudSearch
Getting Started with Amazon CloudSearch
 
Google App Engine for Business 101
Google App Engine for Business 101Google App Engine for Business 101
Google App Engine for Business 101
 
Zuora @ AlwaysOn 2012 - The Only 3 SaaS Metrics That Matter
Zuora @ AlwaysOn 2012 - The Only 3 SaaS Metrics That MatterZuora @ AlwaysOn 2012 - The Only 3 SaaS Metrics That Matter
Zuora @ AlwaysOn 2012 - The Only 3 SaaS Metrics That Matter
 
Cloud Computing – Time for delivery. The question is not “if”, but “how, whe...
Cloud Computing – Time for delivery.  The question is not “if”, but “how, whe...Cloud Computing – Time for delivery.  The question is not “if”, but “how, whe...
Cloud Computing – Time for delivery. The question is not “if”, but “how, whe...
 
Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?
 
Architecting for the Cloud: demo and best practices, by Simone Brunozzi (2011...
Architecting for the Cloud: demo and best practices, by Simone Brunozzi (2011...Architecting for the Cloud: demo and best practices, by Simone Brunozzi (2011...
Architecting for the Cloud: demo and best practices, by Simone Brunozzi (2011...
 
Future of cloud computing linthicum
Future of cloud computing linthicumFuture of cloud computing linthicum
Future of cloud computing linthicum
 
Journey Through the AWS Cloud; Development and Test
Journey Through the AWS Cloud; Development and TestJourney Through the AWS Cloud; Development and Test
Journey Through the AWS Cloud; Development and Test
 
AWS for Media: Content in the Cloud, Miles Ward (Amazon Web Services) and Bha...
AWS for Media: Content in the Cloud, Miles Ward (Amazon Web Services) and Bha...AWS for Media: Content in the Cloud, Miles Ward (Amazon Web Services) and Bha...
AWS for Media: Content in the Cloud, Miles Ward (Amazon Web Services) and Bha...
 
Cloud Computing Integration Introduction
Cloud Computing Integration IntroductionCloud Computing Integration Introduction
Cloud Computing Integration Introduction
 
Open source and standards - unleashing the potential for innovation of cloud ...
Open source and standards - unleashing the potential for innovation of cloud ...Open source and standards - unleashing the potential for innovation of cloud ...
Open source and standards - unleashing the potential for innovation of cloud ...
 
Scaling the Cloud - Cloud Security
Scaling the Cloud - Cloud SecurityScaling the Cloud - Cloud Security
Scaling the Cloud - Cloud Security
 
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
Hybrid Customer Insight - Data Collection and Analysis from On-premise and in...
 
Cloud computing What Why How
Cloud computing What Why HowCloud computing What Why How
Cloud computing What Why How
 
High Performance Web Applications
High Performance Web ApplicationsHigh Performance Web Applications
High Performance Web Applications
 
Cloud Computing for Enterprise Architects
Cloud Computing for Enterprise ArchitectsCloud Computing for Enterprise Architects
Cloud Computing for Enterprise Architects
 

Similar to Amazon S3 - More Than Simple Storage

Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1Ram Chinta
 
Disaster Recovery with the AWS Cloud
Disaster Recovery with the AWS CloudDisaster Recovery with the AWS Cloud
Disaster Recovery with the AWS CloudAmazon Web Services
 
MED203 Scalable Media Processing - AWS re: Invent 2012
MED203 Scalable Media Processing - AWS re: Invent 2012MED203 Scalable Media Processing - AWS re: Invent 2012
MED203 Scalable Media Processing - AWS re: Invent 2012Amazon Web Services
 
Lap around windows azure
Lap around windows azureLap around windows azure
Lap around windows azureManish Corriea
 
An intro to Amazon Web Services (AWS)
An intro to Amazon Web Services (AWS)An intro to Amazon Web Services (AWS)
An intro to Amazon Web Services (AWS)Andreas Chatzakis
 
Brief about Windows Azure Platform
Brief about Windows Azure Platform Brief about Windows Azure Platform
Brief about Windows Azure Platform K.Mohamed Faizal
 
1 Introduction at CloudStack Developer Day
1 Introduction at CloudStack Developer Day 1 Introduction at CloudStack Developer Day
1 Introduction at CloudStack Developer Day Kimihiko Kitase
 
Open Cloud Interop Public
Open Cloud Interop PublicOpen Cloud Interop Public
Open Cloud Interop Publicrvanhoe
 
Sdc 2012-how-can-hypervisors-leverage-advanced-storage-features-v7.6(20-9-2012)
Sdc 2012-how-can-hypervisors-leverage-advanced-storage-features-v7.6(20-9-2012)Sdc 2012-how-can-hypervisors-leverage-advanced-storage-features-v7.6(20-9-2012)
Sdc 2012-how-can-hypervisors-leverage-advanced-storage-features-v7.6(20-9-2012)Abhijeet Kulkarni
 
AWS Use Cases
AWS Use CasesAWS Use Cases
AWS Use Casessamof76
 
Windows Azure platform overview
Windows Azure platform overviewWindows Azure platform overview
Windows Azure platform overviewFrédéric Harper
 
STG204 Using the AWS Storage Gateway - AWS re:Invent 2012
STG204 Using the AWS Storage Gateway - AWS re:Invent 2012STG204 Using the AWS Storage Gateway - AWS re:Invent 2012
STG204 Using the AWS Storage Gateway - AWS re:Invent 2012Amazon Web Services
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAmazon Web Services
 
Windows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud ComputingWindows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud ComputingGeorge Kanellopoulos
 
13h00 aws 2012-fault_tolerant_applications
13h00   aws 2012-fault_tolerant_applications13h00   aws 2012-fault_tolerant_applications
13h00 aws 2012-fault_tolerant_applicationsinfolive
 

Similar to Amazon S3 - More Than Simple Storage (20)

Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1
 
Disaster Recovery with the AWS Cloud
Disaster Recovery with the AWS CloudDisaster Recovery with the AWS Cloud
Disaster Recovery with the AWS Cloud
 
MED203 Scalable Media Processing - AWS re: Invent 2012
MED203 Scalable Media Processing - AWS re: Invent 2012MED203 Scalable Media Processing - AWS re: Invent 2012
MED203 Scalable Media Processing - AWS re: Invent 2012
 
Lap around windows azure
Lap around windows azureLap around windows azure
Lap around windows azure
 
Overview of Amazon Web Services
Overview of Amazon Web ServicesOverview of Amazon Web Services
Overview of Amazon Web Services
 
PHP in the Cloud
PHP in the CloudPHP in the Cloud
PHP in the Cloud
 
Cloud computing overview
Cloud computing overviewCloud computing overview
Cloud computing overview
 
An intro to Amazon Web Services (AWS)
An intro to Amazon Web Services (AWS)An intro to Amazon Web Services (AWS)
An intro to Amazon Web Services (AWS)
 
Brief about Windows Azure Platform
Brief about Windows Azure Platform Brief about Windows Azure Platform
Brief about Windows Azure Platform
 
1 Introduction at CloudStack Developer Day
1 Introduction at CloudStack Developer Day 1 Introduction at CloudStack Developer Day
1 Introduction at CloudStack Developer Day
 
Open Cloud Interop Public
Open Cloud Interop PublicOpen Cloud Interop Public
Open Cloud Interop Public
 
Sdc 2012-how-can-hypervisors-leverage-advanced-storage-features-v7.6(20-9-2012)
Sdc 2012-how-can-hypervisors-leverage-advanced-storage-features-v7.6(20-9-2012)Sdc 2012-how-can-hypervisors-leverage-advanced-storage-features-v7.6(20-9-2012)
Sdc 2012-how-can-hypervisors-leverage-advanced-storage-features-v7.6(20-9-2012)
 
AWS Use Cases
AWS Use CasesAWS Use Cases
AWS Use Cases
 
Windows Azure platform overview
Windows Azure platform overviewWindows Azure platform overview
Windows Azure platform overview
 
STG204 Using the AWS Storage Gateway - AWS re:Invent 2012
STG204 Using the AWS Storage Gateway - AWS re:Invent 2012STG204 Using the AWS Storage Gateway - AWS re:Invent 2012
STG204 Using the AWS Storage Gateway - AWS re:Invent 2012
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloud
 
Windows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud ComputingWindows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud Computing
 
13h00 aws 2012-fault_tolerant_applications
13h00   aws 2012-fault_tolerant_applications13h00   aws 2012-fault_tolerant_applications
13h00 aws 2012-fault_tolerant_applications
 
Fault Tolerant Applications on AWS
Fault Tolerant Applications on AWSFault Tolerant Applications on AWS
Fault Tolerant Applications on AWS
 
1st Eucalyptus Bay Area Meet Up
1st Eucalyptus Bay Area Meet Up1st Eucalyptus Bay Area Meet Up
1st Eucalyptus Bay Area Meet Up
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Recently uploaded

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 

Recently uploaded (20)

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 

Amazon S3 - More Than Simple Storage

  • 1. Masterclass Amazon S3 – beyond simple storage Ryan Shuttleworth – Technical Evangelist @ryanAWS
  • 2. Masterclass A technical deep dive beyond the basics Help educate you on how to get the best from AWS technologies Show you how things work and how to get things done Broaden your knowledge in ~45 mins
  • 3. Amazon S3 It’s more than just a ‘simple’ storage platform A sophisticated 21st century distributed system A bedrock architectural component for many applications
  • 4.
  • 5. “Spotify needed a storage solution that could scale very quickly without incurring long lead times for upgrades. This led us to cloud storage, and in that market, Amazon Simple Storage Service (Amazon S3) is the most mature large-scale product. Amazon S3 gives us confidence in our ability to expand storage quickly while also providing high data durability.” Emil Fredriksson, Operations Director
  • 6. You put it in S3 AWS stores with 99.999999999% durability
  • 7. Highly scalable web access to objects You put it in S3 AWS stores with 99.999999999% durability Multiple redundant copies in a region
  • 8. but it’s more than just a simple storage service
  • 9. Objects in S3 1500.000 1.3 Trillion 1250.000 1000.000 750.000 500.000 250.000 0.000 835k+ peak transactions per second
  • 10. Highly scalable data storage A web store, not a file system Access via APIs What is S3? Fast Economical Highly available & durable
  • 11. A web store, not a file system Write once, read many (WORM) Eventually consistent
  • 12. A web store, not a file system Load balancers Load balancers Write once, read many Web servers Web servers (WORM) Eventually consistent Indexing Storage Indexing Storage Availability Zone Availability Zone Region Conceptual diagram only
  • 13. A web store, not a file system Load balancers Load balancers Write once, read many Web servers Web servers (WORM) Eventually consistent Indexing Storage Indexing Storage Availability Zone Availability Zone Region Conceptual diagram only
  • 14. A web store, not a file system Load balancers Load balancers Write once, read many Web servers Web servers (WORM) Eventually consistent Indexing Storage Indexing Storage Availability Zone Availability Zone Region Conceptual diagram only
  • 15. A web store, not a file system Load balancers Load balancers Write once, read many Web servers Web servers (WORM) Eventually consistent Indexing Storage Indexing Storage Availability Zone Availability Zone Region Conceptual diagram only
  • 16. A web store, not a file system Load balancers Load balancers Write once, read many Web servers Web servers (WORM) Eventually consistent Indexing Storage Indexing Storage Availability Zone Availability Zone Region Conceptual diagram only
  • 17. A web store, not a file system Load balancers Load balancers Write once, read many Web servers Web servers (WORM) Eventually consistent Indexing Storage Indexing Storage Availability Zone Availability Zone Region Conceptual diagram only
  • 18. A web store, not a file system Load balancers Load balancers Write once, read many Web servers Web servers (WORM) Eventually consistent Indexing Storage Indexing Storage Availability Zone Availability Zone Region Conceptual diagram only
  • 19. A web store, not a file system Load balancers Load balancers Write once, read many Web servers Web servers (WORM) Eventually consistent Indexing Storage Indexing Storage Availability Zone Availability Zone Region Conceptual diagram only
  • 20. A web store, not a file system Write once, read many (WORM) Eventually consistent Conceptual diagram only
  • 21. New objects Synchronously stores your data across multiple facilities before returning SUCCESS A web store, not a file system Read-after-write consistency* Updates Write once, Write then read: could report key does not exist read many Write then list: might not include key in list (WORM) Overwrite then read: old data could be returned Eventually consistent Deletes Delete then read: could still get old data Delete then list: deleted key could be included in list *except US-STANDARD region
  • 22. A regional service Your data never leaves a region unless you move it
  • 23. Storage classes Controlling the way S3 holds your data
  • 24. Amazon S3 storage classes Standard Designed to provide 99.999999999% durability and 99.99% availability of objects over a given year Designed to sustain the concurrent loss of data in two facilities
  • 25. Amazon S3 storage classes Reduced Standard Redundancy Storage Designed to provide Reduces costs by storing data at 99.999999999% durability and lower levels of redundancy than 99.99% availability of objects the Standard storage over a given year Designed to provide 99.99% Designed to sustain the durability and 99.99% availability concurrent loss of data in two of objects over a given year facilities
  • 26. Amazon S3 storage classes Reduced Standard Redundancy Storage Glacier Designed to provide Reduces costs by storing data at Suitable for archiving data, where 99.999999999% durability and lower levels of redundancy than data access is infrequent and a 99.99% availability of objects the Standard storage retrieval time of several hours is over a given year acceptable Designed to provide 99.99% Designed to sustain the durability and 99.99% availability Uses the very low-cost Amazon concurrent loss of data in two of objects over a given year Glacier storage service, but managed facilities through Amazon S3
  • 27. Amazon S3 storage classes Reduced Standard Redundancy Storage Glacier Designed to provide Reduces costs by storing data Suitable for archiving data, 99.999999999%want to Objects you durability at lower levels can afford to Objects you of redundancy where data access is infrequent Objects you want to keep and 99.99% availability of than the Standard storage and a retrieval time of several have high durability lose or can recreate in archive for a long time objects over a given year Designed to provide 99.99% hours is acceptable Designed to sustain the e.g. master copy of movie e.g. durability and 99.99% different encodings of movie e.g. digital very low-cost Amazon Uses the archive of old movies & concurrent loss of data in media availability of objects over a media Glacier storage service, but broadcasts two facilities given year managed through Amazon S3
  • 29. Amazon S3 namespace Globally unique bucket name + object name (key)
  • 30. Amazon S3 namespace Amazon S3 bucket bucket object object object object bucket object object
  • 31. Amazon S3 namespace Amazon S3 jones-docshare media.mydomain.com beach.jpg drafts/rpt.doc img1.jpg style.css yourdomain.com swf/mediaplayer.swf img/banner1.jpg
  • 32. Amazon S3 namespace Object key Unique with a bucket
  • 33. Amazon S3 namespace Object key Max 1024 bytes UTF-8 Including ‘path’ prefixes Unique with a bucket
  • 34. Amazon S3 namespace Object key Max 1024 bytes UTF-8 Including ‘path’ prefixes Unique with a bucket assets/js/jquery/plugins/jtables.js this is an object key
  • 35. Throughput optimisation S3 automatically partitions based upon key prefix: Bucket: Object keys: mynewgame 2134857/gamedata/start.png
2134857/g amedata/resource.rsrc
2134857/gameda ta/results.txt
2134858/gamedata/star t.png
2134858/gamedata/resource.rsrc 
2134858/gamedata/results.txt
213485 9/gamedata/start.png
2134859/gamedat a/resource.rsrc
2134859/gamedata/res ults.txt
  • 36. Throughput optimisation S3 automatically partitions based upon key prefix: Bucket: Object keys: mynewgame 2134857/gamedata/start.png
2134857/g amedata/resource.rsrc
2134857/gameda ta/results.txt
2134858/gamedata/star t.png
2134858/gamedata/resource.rsrc 
2134858/gamedata/results.txt
213485 9/gamedata/start.png
2134859/gamedat Incrementing a/resource.rsrc
2134859/gamedata/res game id ults.txt
  • 37. Throughput optimisation S3 automatically partitions based upon key prefix: Bucket: Object keys: mynewgame 2134857/gamedata/start.png
2134857/g amedata/resource.rsrc
2134857/gameda ta/results.txt
2134858/gamedata/star t.png
2134858/gamedata/resource.rsrc 
2134858/gamedata/results.txt
213485 9/gamedata/start.png
2134859/gamedat Partition: a/resource.rsrc
2134859/gamedata/res mynewgame/2 ults.txt
  • 38. Throughput optimisation S3 automatically partitions based upon key prefix: Bucket: Object keys: mynewgame 7584312/gamedata/start.png
7584312/g amedata/resource.rsrc
7584312/gameda ta/results.txt
8584312/gamedata/star t.png
8584312/gamedata/resource.rsrc 
8584312/gamedata/results.txt
958431 2/gamedata/start.png
9584312/gamedat Reversed game a/resource.rsrc
9584312/gamedata/res ID ults.txt
  • 39. Throughput optimisation S3 automatically partitions based upon key prefix: Bucket: Object keys: mynewgame 7584312/gamedata/start.png
7584312/g amedata/resource.rsrc
7584312/gameda ta/results.txt
8584312/gamedata/star t.png
8584312/gamedata/resource.rsrc 
8584312/gamedata/results.txt
958431 Partitions: 2/gamedata/start.png
9584312/gamedat mynewgame/7 a/resource.rsrc
9584312/gamedata/res mynewgame/8 ults.txt mynewgame/9
  • 41. Automatic encryption of data at rest Simple Additional PUT Durable header S3 key storage Server side encryption Strong Secure AES-256 3-way simultaneous access Self managed No need to manage a key store
  • 42. Server side encryption Data bucket High level design
  • 43. Server side encryption Encrypted object Data bucket Encrypted data Per-object key High level design
  • 44. Server side encryption Encrypted object Data bucket Encrypted data Encrypted per-object key Per-object key Master key High level design
  • 45. Server side encryption Encrypted object Data bucket Encrypted data Encrypted per-object key Per-object key Key management (monthly rotation) Master key High level design
  • 46.
  • 47. Access controls You’re in control of who does what
  • 48. You decide what to share Apply policies to buckets and objects Secure by default Policies, ACLs & IAM Use S3 policies, ACLs or IAM to define rules
  • 49. IAM Fine grained Administer as part of role based access Apply policies to S3 at role, user & group level Allow Actions PutObject Resource arn:aws:s3:::mybucket/* Bob Jane
  • 50. IAM VS Bucket Policies Fine grained Fine grained Administer as part of Apply policies at the bucket role based access level in S3 Apply policies to S3 at Incorporate user restrictions role, user & group level without using IAM Allow Allow Bob, Jane Actions Actions PutObject PutObject Resource Resource arn:aws:s3:::mybucket/* arn:aws:s3:::mybucket/* Bob Jane mybucket
  • 51. IAM VS Bucket Policies VS ACLs Fine grained Fine grained Coarse grained Administer as part of Apply policies at the bucket Apply access control role based access level in S3 rules at the bucket Apply policies to S3 at Incorporate user restrictions and/or object level in S3 role, user & group level without using IAM Allow Allow Allow Bob, Jane Everyone, Bob, Jane Actions Actions Actions PutObject PutObject Read Resource Resource arn:aws:s3:::mybucket/* arn:aws:s3:::mybucket/* Bob Jane mybucket mybucket myobject
  • 52. Access controls – bucket policy {"Statement":[{ "Effect":"Allow", "Principal":{"AWS":["4649-6425", "5243-0045"]}, "Action":"*", "Resource":"/mybucket/*", "Condition":{ "IpAddress":{"AWS:SourceIp":"176.13.0.0/12"} }}]}
  • 53. Access controls – bucket policy {"Statement":[{ Accounts to allow "Effect":"Allow", "Principal":{"AWS":["4649-6425", "5243-0045"]}, "Action":"*", "Resource":"/mybucket/*", "Condition":{ "IpAddress":{"AWS:SourceIp":"176.13.0.0/12"} }}]}
  • 54. Access controls – bucket policy {"Statement":[{ "Effect":"Allow", "Principal":{"AWS":["4649-6425", "5243-0045"]}, "Action":"*", "Resource":"/mybucket/*", Resource "Condition":{ "IpAddress":{"AWS:SourceIp":"176.13.0.0/12"} }}]}
  • 55. Access controls – bucket policy {"Statement":[{ "Effect":"Allow", "Principal":{"AWS":["4649-6425", "5243-0045"]}, "Action":"*", "Resource":"/mybucket/*", "Condition":{ "IpAddress":{"AWS:SourceIp":"176.13.0.0/12"} }}]} Source address to allow
  • 56. Transitions & Lifecycle Management Automated management of objects
  • 58. Object deletion Permanently delete objects from S3 Lifecycle management
  • 59. Object deletion Permanently delete objects from S3 Lifecycle management Object archiving Move objects to Glacier and out of S3 storage
  • 61. Durable Designed for 99.999999999% durability of archives Long term Glacier archive Cost effective Write-once, read-never. Cost effective for long term storage. Pay for accessing data
  • 62. Expiry Logs accessible from S3 time
  • 63. ✗ Expiry Logs accessible from S3 Objects expire and are deleted time
  • 64. Object transition to Transition Glacier invoked accessible from S3 Txns ✗ Expiry Logs accessible from S3 Objects expire and are deleted time
  • 65. Object Restoration of transition to object requested Transition Glacier invoked for x hrs accessible from S3 Txns ✗ Expiry Logs accessible from S3 Objects expire and are deleted time
  • 66. Object Restoration of transition to object requested Transition Glacier invoked for x hrs Object held in S3 accessible from S3 RRS for x hrs Txns 3-5hrs ✗ Expiry Logs accessible from S3 Objects expire and are deleted time
  • 67. 3-5 hour retrieval time We assume you won’t access often
  • 68.
  • 69. using (client = new AmazonS3Client()){ var lifeCycleConfiguration = new LifecycleConfiguration() { Rules = new List<LifecycleRule> { new LifecycleRule { Id = "Archive and delete rule", Prefix = "projectdocs/", Status = LifecycleRuleStatus.Enabled, Transition = new LifecycleTransition() { Days = 365, StorageClass = S3StorageClass.Glacier }, Expiration = new LifecycleRuleExpiration() { Days = 3650 } } } };
  • 70. using (client = new AmazonS3Client()){ var lifeCycleConfiguration = new LifecycleConfiguration() { Rules = new List<LifecycleRule> { new LifecycleRule { Transition to Id = "Archive and delete rule", Prefix = "projectdocs/", Glacier after 1 Status = LifecycleRuleStatus.Enabled, year Transition = new LifecycleTransition() { Days = 365, StorageClass = S3StorageClass.Glacier }, Expiration = new LifecycleRuleExpiration() { Days = 3650 } } } };
  • 71. using (client = new AmazonS3Client()){ var lifeCycleConfiguration = new LifecycleConfiguration() { Rules = new List<LifecycleRule> { new LifecycleRule { Id = "Archive and delete rule", Prefix = "projectdocs/", Status = LifecycleRuleStatus.Enabled, Transition = new LifecycleTransition() Delete object { Days = 365, after 10 years StorageClass = S3StorageClass.Glacier }, Expiration = new LifecycleRuleExpiration() { Days = 3650 } } } };
  • 72.
  • 73. POST /ObjectName?restore HTTP/1.1 Host: BucketName.s3.amazonaws.com Date: date Authorization: signatureValue Content-MD5: MD5 <RestoreRequest xmlns="http://s3.amazonaws.com/doc/2006-3-01"> <Days>NumberOfDays</Days> </RestoreRequest>
  • 74. POST /ObjectName?restore HTTP/1.1 Host: BucketName.s3.amazonaws.com Date: date Authorization: signatureValue Content-MD5: MD5 <RestoreRequest xmlns="http://s3.amazonaws.com/doc/2006-3-01"> <Days>NumberOfDays</Days> </RestoreRequest> Response codes: 202 Accepted Restore request accepted 200 OK Object already restored, number of days updated 409 Conflict Restoration already in progress
  • 75. Website hosting Static sites straight from S3
  • 76. It’s a web service… …so serve up web content
  • 77. Setting default documents Redirecting requests
  • 78. { "Version":"2008-10-17", "Statement":[{ "Sid":"PublicReadGetObject", "Effect":"Allow", "Principal": { "AWS": "*" }, "Action":["s3:GetObject"], "Resource":["arn:aws:s3:::example-bucket/*" ] } ] }
  • 79. Website addressing {bucket-name}.s3-website-{region}.amazonaws.com e.g. mybucket.s3-website-eu-west-1.amazonaws.com Normal addressing s3-{region}.amazonaws.com/{bucket-name}/{object-key} e.g. s3-eu-west-1.amazonaws.com/mybucket/img.png {bucket-name}.s3-{region}.amazonaws.com/{object-key} e.g. mybucket.s3-eu-west-1.amazonaws.com/img.png
  • 81. Record set for: aws-examples.info R53 Index. Error. bucket bucket html html Website bucket name: Website bucket name: www.aws-examples.info aws-examples.info
  • 82. Record set for: aws-examples.info R53 Index. Error. bucket bucket html html Website redirect to: aws-examples.info Website bucket name: Website bucket name: www.aws-examples.info aws-examples.info
  • 83. Record set for: aws-examples.info A Record ‘Alias’ to S3 website: R53 aws-examples.info @ s3-website-eu- west-1.amazonaws.com Index. Error. bucket bucket html html Website redirect to: aws-examples.info Website bucket name: Website bucket name: www.aws-examples.info aws-examples.info
  • 84. Record set for: aws-examples.info CNAME for www. to: A Record ‘Alias’ to S3 website: www.aws-examples.info.s3- R53 aws-examples.info @ s3-website-eu- website-eu-west-1.amazonaws.com west-1.amazonaws.com Index. Error. bucket bucket html html Website redirect to: aws-examples.info Website bucket name: Website bucket name: www.aws-examples.info aws-examples.info
  • 85.
  • 86. Object versioning Preserving object histories
  • 87. Bucket level Persistent Automatically preserves Even deleted object all copies of objects history is held
  • 88. >>> import boto >>> conn = boto.connect_s3() >>> from boto.s3.bucket import Bucket >>> from boto.s3.key import Key >>> bucket = conn.get_bucket(’mybucket') >>> versions = bucket.list_versions() >>> for version in versions: ... print version.name + version.version_id ...
  • 89. >>> import boto >>> conn = boto.connect_s3() >>> from boto.s3.bucket import Bucket >>> from boto.s3.key import Key >>> bucket = conn.get_bucket(’mybucket') >>> versions = bucket.list_versions() >>> for version in versions: ... print version.name + version.version_id Object ... version IDs myfile.txt jU9eVv800OlP4PQx6zskMEyPIoExne57 myfile.txt xOJzMvMmGv0Bx2v4QpIypbkkH2XE2yyq myfile.txt 8cjozv9Hmkzum8xj.8q8BZxR5CuXnzon
  • 90. >>> key = bucket.get_key('myfile.txt', version_id='8cjozv9Hmkzum8xj.8q8BZxR5CuXnzon’) >>> key.get_contents_as_string() 'this is version 1 of my file’ Grabbing the contents of a version
  • 91. >>> key = bucket.get_key('myfile.txt', version_id='8cjozv9Hmkzum8xj.8q8BZxR5CuXnzon’) >>> key.get_contents_as_string() 'this is version 1 of my file’ >>> key = bucket.get_key('myfile.txt', version_id='xOJzMvMmGv0Bx2v4QpIypbkkH2XE2yyq’) >>> key.get_contents_as_string() 'this is version 2 of my file’
  • 92. >>> key = bucket.get_key('myfile.txt', version_id='8cjozv9Hmkzum8xj.8q8BZxR5CuXnzon’) >>> key.get_contents_as_string() 'this is version 1 of my file’ >>> key = bucket.get_key('myfile.txt', version_id='xOJzMvMmGv0Bx2v4QpIypbkkH2XE2yyq’) >>> key.get_contents_as_string() Generating a ’10 'this is version 2 of my file’ minute time bombed’ url for an older >>> key.generate_url(600) version 'https://mybucket.s3.amazonaws.com/myfile.txt?Signature= ABCD&Expires=1358857379&AWSAccessKeyId=AB& versionId=xOJzMvMmGv0Bx2v4QpIypbkkH2XE2yyq'
  • 95. System metadata Name Description Editable? Date Object creation date No Content-Length Object size in bytes No Content-MD5 Base64 encoded 128bit MD5 digest No x-amz-server-side-encryption Server side encryption enabled for object Yes x-amz-version-id Object version No x-amz-delete-marker Indicates a version enabled object is deleted No x-amz-storage-class Storage class for the object Yes x-amz-website-redirect-location Redirects request for the object to another object or external URL Yes
  • 96. User metadata Key-value pairs stored with objects and returned with requests x-amz-meta-{your metadata key in here}
  • 97. >>> key.set_metadata(’my_tag', ’my metadata') >>> key.get_metadata(’my_tag') ’my metadata'
  • 98. Cloud Front Delivery from global edge locations
  • 99. Download Enable static and dynamic assets to be served from edge locations Global content distribution Streaming Serve RTMP directly from media files in buckets
  • 100.
  • 101. S3 Bucket Cache control Forwarding Optional CNAME Edge access controls
  • 102.
  • 103. S3 Bucket Optional CNAME Logging to S3
  • 105. Download distribution <html> <script type='text/javascript' src=’http://d2ew7gdzogp20x.cloudfront.net/jwplayer/jwplayer.js'></script> <body> <div id='player'></div> <script type='text/javascript'> jwplayer('player').setup({ file: "rtmp://s1eat02wfxn38u.cloudfront.net/cfx/st/montage-medium.mp4", width: "480", height: "270", }); </script> Streaming </body> distribution </html>
  • 107. Stop doing these: Capacity planning Management of storage Worrying about backing up the backup Fixing broken hardware
  • 108. Bootstrapping Store scripts and drive EC2 Backups & archive Application backends instances on startup Storage gateway, 3rd Incorporate S3 SDKs into party tools your applications and start doing these Application logs Documentation Store logs and analyse Web content Store documents with with EMR versioning and security Serve content and models distribute globally