Documents
Resources
Learning Center
Upload
Plans & pricing Sign in
Sign Out

How to Run Your Startup on Amazon Web Services Presentation

VIEWS: 10 PAGES: 36

									Running Your Startup on
 Amazon Web Services

          Alex Iskold
  Founder/CEO AdaptiveBlue
 Feature Writer ReadWriteWeb
     This session is about:

  Amazon Web Services (AWS) -
  robust, scalable and affordable
infrastructure for cloud computing.
               We will cover:
   The Basics of Cloud Computing
   The Benefits of Using Amazon Web Services
   Amazon Web Services Stack
   How AdaptiveBlue is using AWS
   How you can get started using AWS
Basics of Cloud Computing
                 Basics of Cloud Computing


                                       Scalable Hardware Layer
      QuickTime™ and a                    QuickTime™ and a                    QuickTime™ and a                    QuickTime™ and a                    QuickTime™ and a                    QuickTime™ and a
        decompressor                        decompressor                        decompressor                        decompressor                        decompressor                        decompressor
are neede d to se e this picture.   are neede d to se e this picture.   are neede d to se e this picture.   are neede d to se e this picture.   are neede d to se e this picture.   are neede d to se e this picture.
             Basics of Cloud Computing

                                    Software Infrastructure Layer
                  Grid                                                                        Storage                                                                 Queue
                 Service                                                                      Service                                                                 Service


                                        Scalable Hardware Layer
      QuickTime™ and a                     QuickTime™ and a                    QuickTime™ and a                    QuickTime™ and a                    QuickTime™ and a                    QuickTime™ and a
        decompressor                         decompressor                        decompressor                        decompressor                        decompressor                        decompressor
are neede d to se e this picture.    are neede d to se e this picture.   are neede d to se e this picture.   are neede d to se e this picture.   are neede d to se e this picture.   are neede d to se e this picture.
                                    Example: Storage Service
                                                Storage
                                                Service

                                                  QuickTime™ and a
                                                    decompressor
                                            are neede d to se e this picture.
                                                                                                     Storage
Storage                                                                                              Service
Service                                                                                New Server
                                                                                                           QuickTime™ and a
                                                                                                             decompressor
                                                                                                     are neede d to se e this picture.



      QuickTime™ and a
        decompressor
are neede d to se e this picture.




                                         Storage
                                         Service

                                           QuickTime™ and a
                                                                                The data is automatically
                                                                                re-partitioned/re-balanced to
                                             decompressor
                                     are neede d to se e this picture.




                                                                                take advantage of the new server
 5 Benefits of Using
Amazon Web Services
 1. Pay-per use model

 You are only charged for disk space,
CPU time and bandwidth that you use.
2. Instant scalability

  Your Service automatically
    scales on AWS stack.
3. Reliable/Redundant/Secure

         Infrequent outages (so far).
      Data is redundant in the cloud.
     All services have built-in security.

 * Soon will add Comprehensive to the list.
4. Most services accessed via simple
           REST/SOAP API

   Libraries are available in all major languages.
              Minimal learning curve.
5. Amazon - Experience &
       Commitment

Amazon has been doing this for ~15 years.
 Company-wide commitment to AWS.
Amazon Web Services Stack
  Elastic Cloud      Simple Storage
  Service (EC2)       Service (S3)




 Simple Database     Simple Queue
Service (SimpleDB)   Service (SQS)
Elastic Compute Cloud (EC2)

         On-demand grid
                                            EC2 in a Nutshell
                                                                                                            Usage:

      QuickTime™ and a
        decompressor
are neede d to se e this picture.
                                          QuickTime™ and a
                                            decompressor
                                    are neede d to se e this picture.
                                                                              QuickTime™ and a
                                                                                decompressor
                                                                        are neede d to se e this picture.
                                                                                                            •   Create Machine Image
                                                                                                            •   Deploy the image to S3
                                                                                                            •   Start 1 or more instances
                                                                                                            •   Use it as regular machine(s)

                                                                                                            Main Options:
                               Machine                                                                      •   Dynamic/Static IPS
                                Image                                                                       •   Choose cores
                             (OS + Apps)                                                                    •   Choose locations
                                                                                                            •   Persistence via EBS
         Sample EC2 Use Cases
Batch Processing

   All instances are configured with the same code.
   Each instance operates on a subset of data.
   Partitions are specified in configuration file.

Web Service

   All instances are configured with the same code.
   One or more instances are configured as load balancers
    (HAProxy for example).
   DNS Server distributes requests between load balancers.
  EC2 vs. Web Hosting Company
Good

   Instantly add new instances
   Full-control over the machines and choice of the environment
   Likely cheaper (but depends on your exact situation)

Bad

   Need to put the images together and manage instances
   No dedicated technical support
  (but there is premium support and RightScale solutions)
Simple Storage Service (S3)

 Large media and everything else storage.
                    S3 in a Nutshell
             Amazon S3              Idea:

  Bucket 1               Bucket N   Put/Get objects into buckets
                …                   based on unique keys.




Put object             Get object   Main Features:

                                    •   Public/Private access.
              Client                •   Support for large objects.
               Sample S3 Use Cases
Image/Video storage

    Put your media once on S3 and then serve it up
    Reads are 10 times cheaper than writes!

Serialize your Java Objects

      Define unique key based on the object attributes
      Write out binary serialized version to a stream
      Write bytes to S3
      Read them back when needed
Simple Database Service (SimpleDB)

   Basic database and indexing service
             Simple DB in a Nutshell
       Simple DB Domain
                                     Idea:
              Record 1
   Key1      Attributes: A1,A2…      Create flat database with
                 …                   auto-indexed tables.
              Record N
   Key2      Attributes: A1,A2…      Main Features:

                                     •   Each attribute is indexed.
                     Get record      •   Record structure is flexible.
Put record           Query records   •   Basic operators in queries
                                     •   Supports sorting.
              Client
       Sample SimpleDB Use Cases
Index Media files stored on S3

     Use the same key as on S3
     Write the record with each metadata element as attribute

Store flat objects

     Use SimpleDB as a storage for non-nested data
Simple Queue Service (SQS)

  Infinite Asynchronous Queue
                  SQS in a Nutshell
           SQS Queue
                             Idea:
           Message 1
              …              Create an infinite
                             asynchronous queue.
           Message N


                   Receive    Main Features:
Send               Message
Message                       •   Multiple queues
                              •   Upto 4K messages
  Writer           Reader     •   Message Locking
               Sample SQS Use Cases
Twitter Friend Update

     For each update generate a task to update friends
     Process updates in order

Publish/Subscribe

     Post messages to the queue to inform multiple subscribers

Process Pipeline

     Use different queues to put, for example, and order through a pipeline.
How AdaptiveBlue uses
Amazon Web Services
                                  AdaptiveBlue Overview
                    We develop browser enhancement technologies that
                    deliver contextual relevant information into the user
                    current page:

                                  1. What did your friends and other people think about it?

                                  2. How popular is this book right now?
       QuickTime™ and a
         decompress or
are needed to see this picture.




                                  3. What are additional relevant links for this book?
        AdaptiveBlue & AWS
            Background

 One of the first companies to use AWS
 Started with using S3
 Now using S3, SimpleDB, EC2 and
  Commerce Service
AdaptiveBlue AWS Architecture
 Web Browser 1       …      Web Browser N


                    EC2
         LB                     LB



   WS1        WSn         WS1        WSn



    SimpleDB                    S3
          AdaptiveBlue & AWS
On EC2:
   We are running web service and load balancers
On S3:
   We are storing XML representation of books, music,
    movies, stocks, wines, etc. as well as XML of user profiles.
On SimpleDB:
   Records of interactions between users and things they are
    looking at, liking or commenting.
   Records that map user ids to other services
   Records that map between our internal object keys and
    URLs for this object around the web.
                Noteworthy usage

 We turn SimpleDB into relational database via redundancy.

 We have person and object domains. Each time when the user
  interacts with an object we write a record with
  USERNAME/OBJECT_KEY pair into 2 domains - one object
  domain, one person domain.

 This way we can instantly retrieve recent objects for a person
  and recent people for each object.
                  AdaptiveBlue
                Recommends AWS
 We love Amazon Web Services and couldn’t have built AdaptiveBlue
  without them.

 Thanks to AWS we scale today to hundreds of thousands of users .

 Our current costs are < 2K per month.

 Amazon team has been nothing less than outstanding in supporting us and
  helping us architect correct solutions.

 We recommend AWS to everyone who asks, because we believe that it
  offers unprecedented head start, scalability and savings.
Amazon Web Services Resources

    All you need - basic info, getting
     started, pricing, tutorials, code,
    forums - all on AWS home page:

        http://tinyurl.com/ynfsn6

								
To top