SlideShare a Scribd company logo
Amazon SDK on Android Devices
CTIA ENTERPRISE AND APPLICATIONS 2011

Shafaq Abdullah
Principal/Architect, Software
October 12, 2011

Twitter: @shafaq110
Shafaq.abdullah@zenprise.com
                                        © 2011 Zenprise, Inc. All rights reserved. 0
Amazon Web Services


• Storage

• Database

• Messaging

• Compute

• Monitoring




                      © 2011 Zenprise, Inc. All rights reserved. 1
Amazon Web Services


• Amazon S3

• Amazon Simple Db

• Amazon SQS

• Amazon SNS




                      © 2011 Zenprise, Inc. All rights reserved. 2
REST


• Resource
• Resource’s URI
• Resource’s Representation




                              © 2011 Zenprise, Inc. All rights reserved. 3
CRUD


       Operation   Description                    Http Method
       Read        Just read, without modifying   GET
       Delete      Delete resource                DELETE
       Create      Create a new resource          PUT /POST
       Update      Modify resource's value        POST/PUT




                                                                © 2011 Zenprise, Inc. All rights reserved. 4
AWS Demo




           © 2011 Zenprise, Inc. All rights reserved. 5
AWS Demo




           © 2011 Zenprise, Inc. All rights reserved. 6
S3 Storage Schema


• Similar to files and folders
• No bucket(s) inside bucket




                                 © 2011 Zenprise, Inc. All rights reserved. 7
Amazon S3 Bucket



                       Amazon S3

                      Your S3 Bucket



                         Object 1


                   Object 2     Object 3




                                           © 2011 Zenprise, Inc. All rights reserved. 8
Creating a Bucket in S3


AWSAuthConnection conn = new AWSAuthConnection
(accessKeyId, secretAccessKey, false, Utils.DEFAULT_HOST,
Utils.INSECURE_PORT, CallingFormat.getPathCallingFormat());
Response createResponse = conn.createBucket(“TestBucket”, null, null); //PUT




                                                                               © 2011 Zenprise, Inc. All rights reserved. 9
Amazon Console




                 © 2011 Zenprise, Inc. All rights reserved. 10
Amazon S3 is Restful


• Stateless

• Client-Server

• Layered Architecture

• Uniform Interface

• Cacheable

• Coding on Demand (optional)




                                © 2011 Zenprise, Inc. All rights reserved. 11
Security Principles


• Build Security in every layer

• Group based rule for controlling access in every layer

• Limit access to specific IP ranges

• Encrypt stored data

• Encrypt data in-transit

• Rotate AWS credentials, Multifactor authentication




                                                       © 2011 Zenprise, Inc. All rights reserved. 12
Amazon Account Setup


• Access Credentials: Your Access Keys, X.509 Certificates,
  and Key Pairs
• Sign-In Credentials: Your E-mail Address, Password, and
  AWS Multi-Factor Authentication Device
• Account Identifiers: Your AWS Account ID and Canonical
  User ID




                                                    © 2011 Zenprise, Inc. All rights reserved. 13
AWS Account Identifiers


• AWS uses two types of account identifiers
• The canonical user ID can be used exclusively for Amazon S3
  resources such as buckets or files
• The AWS account ID can be used for all AWS service
  resources except Amazon S3




                                                   © 2011 Zenprise, Inc. All rights reserved. 14
Amazon S3 Client


• Public List<Bucket> listBuckets
• Public Bucket createBucket(String bucketName)
• Public ObjectMetadata getObjectMetadata(String
  bucketName, String key)
• Public S3Object getObject(String bucketName, String key)
• Public PutObjectResult putObject(String bucketName, String
  key, File file)




                                                    © 2011 Zenprise, Inc. All rights reserved. 15
Amazon Simple DB Description



• Hierarchy for DataStorage in SImpleDB

  - Domains

   - Items

     - Attributes




                                          © 2011 Zenprise, Inc. All rights reserved. 16
Simple DB Storage Model




                          © 2011 Zenprise, Inc. All rights reserved. 17
Data Creation in SimpleDB


• Region Selection
      US East (Northern Virginia), US West (Northern California),
      EU (Ireland)
      Asia Pacific (Singapore), Asia Pacific (Tokyo) Regions

• AmazonSimpleDBAsyncClient: has followoing methods for
  Data Creation
      CreateDomain
      DeleteDomain
      ListDomains
      DomainMetadata




                                                             © 2011 Zenprise, Inc. All rights reserved. 18
Retrieving Data in Simple DB


• GetAttributes to retrieve a specific item
• Select to query your data set for items that meet specified
  criteria




                                                       © 2011 Zenprise, Inc. All rights reserved. 19
API Highlight of Amazon Simple DB

• CreateDomain — Create a domain that contains your dataset.

• DeleteDomain — Delete a domain.

• ListDomains — List all domains.

• DomainMetadata — Retrieve information about creation time for the domain, storage
  information both as counts of item names and attributes, as well as total size in bytes.

• PutAttributes — Add or update an item and its attributes, or add attribute-value pairs to
  items that exist already. Items are automatically indexed as they are received.

• BatchPutAttributes — For greater overall throughput of bulk writes, perform up to 25
  PutAttribute operations in a single call.

• DeleteAttributes — Delete an item, an attribute, or an attribute value.

• BatchDeleteAttributes — For greater overall throughput of bulk deletes, perform up to 25
  DeleteAttributes operations in a single call.

• GetAttributes — Retrieve an item and all or a subset of its attributes and values.

• Select — Query the data set in the familiar Example: select * from mydomain where
  every(keyword) = ‘Car’. Order results using the SORT operator, and count items that meet
  the condition(s) specified by the predicate(s) in a query using the Count operator.


                                                                                © 2011 Zenprise, Inc. All rights reserved. 20
SimpleDB Use Case


S3ObjectID   Date         Last         Subject     Comments   Rating   Tags
             Created      Modified

0001         10-10-2011   10-10-2011   • Science   • Good     A        • Information
                                       • Animal    • Fair              • Nature
                                        History




                                                                       © 2011 Zenprise, Inc. All rights reserved. 21
Simple DB: Read Operation



           Eventually Consistent Read Consistent Read
          Stale reads possible               No stale reads
          Lowest read latency                Higher read latency
          Highest read throughput            Lower read throughput




http://www.allthingsdistributed.com/2010/02/strong_consistency_simpledb.html

                                                                               © 2011 Zenprise, Inc. All rights reserved. 22
Amazon SQS


• Used to pass messages asynchronously between two
  distributed applications




                                                © 2011 Zenprise, Inc. All rights reserved. 23
Amazon SQS




http://sqs-public-
images.s3.amazonaws.com/Building_Scalabale_EC2_applications_with_SQS2.pdf




                                                                     © 2011 Zenprise, Inc. All rights reserved. 24
Amazon SQS


• A single queue can be shared with multiple server
• A server can “lock” the message under process with a
  timeout, if its not able to delelte it within the timeout then the
  lock is relinquished




                                                          © 2011 Zenprise, Inc. All rights reserved. 25
Basic SQS API


• CreateQueue: Create queues for use with your AWS account
• ListQueues: List your existing queues
• DeleteQueue: Delete one of your queues
• SendMessage: Add any data entries to a specified queue
• ReceiveMessage: Return one or more messages from a
  specified queue




                                                   © 2011 Zenprise, Inc. All rights reserved. 26
Life Cycle of SQS API


• System uses SendMessage to add a new message to it SQS
• A different system that processes messages needs more
  messages to process, so it calls ReceiveMessage
• Once a message has been returned by ReceiveMessage, it will
  not be returned by any other ReceiveMessage until the
  visibility timeout has passed
• If the system that processes messages successfully finishes
  working with this message, it calls DeleteMessage, which
  removes the message from the queue so no one else will ever
  process it




                                                   © 2011 Zenprise, Inc. All rights reserved. 27
Amazon SNS


• A highly scalable, flexible, and cost-effective capability to
  publish messages from an application and immediately
  deliver them to subscribers or other application
• SNS push and SQS poll mechanism




                                                         © 2011 Zenprise, Inc. All rights reserved. 28
NetFlix and AWS




  http://qcontokyo.com/pdf/adriancockroft.pdf
                                                © 2011 Zenprise, Inc. All rights reserved. 29
© 2011 Zenprise, Inc. All rights reserved. 30

More Related Content

What's hot

Managing Windows Containers on ECS
Managing Windows Containers on ECSManaging Windows Containers on ECS
Managing Windows Containers on ECS
Amazon Web Services
 
Amazon SageMaker를 통한 대용량 모델 훈련 방법 살펴보기 - 김대근 AWS AI/ML 스페셜리스트 솔루션즈 아키텍트 / 최영준...
Amazon SageMaker를 통한 대용량 모델 훈련 방법 살펴보기 - 김대근 AWS AI/ML 스페셜리스트 솔루션즈 아키텍트 / 최영준...Amazon SageMaker를 통한 대용량 모델 훈련 방법 살펴보기 - 김대근 AWS AI/ML 스페셜리스트 솔루션즈 아키텍트 / 최영준...
Amazon SageMaker를 통한 대용량 모델 훈련 방법 살펴보기 - 김대근 AWS AI/ML 스페셜리스트 솔루션즈 아키텍트 / 최영준...
Amazon Web Services Korea
 
High Performance Web Pages - 20 new best practices
High Performance Web Pages - 20 new best practicesHigh Performance Web Pages - 20 new best practices
High Performance Web Pages - 20 new best practicesStoyan Stefanov
 
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation 20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan
 
How Intuit Leveraged AWS OpsWorks as the Engine of Our PaaS (DMG305) | AWS re...
How Intuit Leveraged AWS OpsWorks as the Engine of Our PaaS (DMG305) | AWS re...How Intuit Leveraged AWS OpsWorks as the Engine of Our PaaS (DMG305) | AWS re...
How Intuit Leveraged AWS OpsWorks as the Engine of Our PaaS (DMG305) | AWS re...
Amazon Web Services
 
Amazon의 머신러닝 솔루션: Fraud Detection & Predictive Maintenance - 남궁영환 (AWS 데이터 사이...
Amazon의 머신러닝 솔루션: Fraud Detection & Predictive Maintenance - 남궁영환 (AWS 데이터 사이...Amazon의 머신러닝 솔루션: Fraud Detection & Predictive Maintenance - 남궁영환 (AWS 데이터 사이...
Amazon의 머신러닝 솔루션: Fraud Detection & Predictive Maintenance - 남궁영환 (AWS 데이터 사이...
Amazon Web Services Korea
 
[AWS Dev Day] 인공지능 / 기계 학습 | AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...
[AWS Dev Day] 인공지능 / 기계 학습 |  AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...[AWS Dev Day] 인공지능 / 기계 학습 |  AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...
[AWS Dev Day] 인공지능 / 기계 학습 | AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...
Amazon Web Services Korea
 
게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 - 유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...
게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 -  유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 -  유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...
게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 - 유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...
Amazon Web Services Korea
 
AWSome Day Glasgow | Technical Track
AWSome Day Glasgow | Technical TrackAWSome Day Glasgow | Technical Track
AWSome Day Glasgow | Technical Track
Amazon Web Services
 
20190306 AWS Black Belt Online Seminar Amazon EC2スポットインスタンス
20190306 AWS Black Belt Online Seminar Amazon EC2スポットインスタンス20190306 AWS Black Belt Online Seminar Amazon EC2スポットインスタンス
20190306 AWS Black Belt Online Seminar Amazon EC2スポットインスタンス
Amazon Web Services Japan
 
클라우드 기반 데이터 분석 및 인공 지능을 위한 비지니스 혁신 - 윤석찬 (AWS 테크에반젤리스트)
클라우드 기반 데이터 분석 및 인공 지능을 위한 비지니스 혁신 - 윤석찬 (AWS 테크에반젤리스트)클라우드 기반 데이터 분석 및 인공 지능을 위한 비지니스 혁신 - 윤석찬 (AWS 테크에반젤리스트)
클라우드 기반 데이터 분석 및 인공 지능을 위한 비지니스 혁신 - 윤석찬 (AWS 테크에반젤리스트)
Amazon Web Services Korea
 
Kubernetes/ EKS - 김광영 (AWS 솔루션즈 아키텍트)
Kubernetes/ EKS - 김광영 (AWS 솔루션즈 아키텍트)Kubernetes/ EKS - 김광영 (AWS 솔루션즈 아키텍트)
Kubernetes/ EKS - 김광영 (AWS 솔루션즈 아키텍트)
Amazon Web Services Korea
 
20200218 AWS Black Belt Online Seminar Next Generation Redshift
20200218 AWS Black Belt Online Seminar Next Generation Redshift20200218 AWS Black Belt Online Seminar Next Generation Redshift
20200218 AWS Black Belt Online Seminar Next Generation Redshift
Amazon Web Services Japan
 
How to Manage Cloud Infrastructures using Zend Framework
How to Manage Cloud Infrastructures using Zend FrameworkHow to Manage Cloud Infrastructures using Zend Framework
How to Manage Cloud Infrastructures using Zend Framework
Zend by Rogue Wave Software
 
AWS Container Services – 유재석 (AWS 솔루션즈 아키텍트)
AWS Container Services – 유재석 (AWS 솔루션즈 아키텍트)AWS Container Services – 유재석 (AWS 솔루션즈 아키텍트)
AWS Container Services – 유재석 (AWS 솔루션즈 아키텍트)
Amazon Web Services Korea
 
[AWS Builders] Effective AWS Glue
[AWS Builders] Effective AWS Glue[AWS Builders] Effective AWS Glue
[AWS Builders] Effective AWS Glue
Amazon Web Services Korea
 
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
Amazon Web Services Japan
 
IVS CTO Night And Day 2018 Winter - [re:Cap] Containers & Microservices
IVS CTO Night And Day 2018 Winter - [re:Cap] Containers & MicroservicesIVS CTO Night And Day 2018 Winter - [re:Cap] Containers & Microservices
IVS CTO Night And Day 2018 Winter - [re:Cap] Containers & Microservices
Amazon Web Services Japan
 
AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)
AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)
AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)
Amazon Web Services Korea
 
AWS Summit 2011: Overview of Security and Compliance in the cloud
AWS Summit 2011: Overview of Security and Compliance in the cloudAWS Summit 2011: Overview of Security and Compliance in the cloud
AWS Summit 2011: Overview of Security and Compliance in the cloudAmazon Web Services
 

What's hot (20)

Managing Windows Containers on ECS
Managing Windows Containers on ECSManaging Windows Containers on ECS
Managing Windows Containers on ECS
 
Amazon SageMaker를 통한 대용량 모델 훈련 방법 살펴보기 - 김대근 AWS AI/ML 스페셜리스트 솔루션즈 아키텍트 / 최영준...
Amazon SageMaker를 통한 대용량 모델 훈련 방법 살펴보기 - 김대근 AWS AI/ML 스페셜리스트 솔루션즈 아키텍트 / 최영준...Amazon SageMaker를 통한 대용량 모델 훈련 방법 살펴보기 - 김대근 AWS AI/ML 스페셜리스트 솔루션즈 아키텍트 / 최영준...
Amazon SageMaker를 통한 대용량 모델 훈련 방법 살펴보기 - 김대근 AWS AI/ML 스페셜리스트 솔루션즈 아키텍트 / 최영준...
 
High Performance Web Pages - 20 new best practices
High Performance Web Pages - 20 new best practicesHigh Performance Web Pages - 20 new best practices
High Performance Web Pages - 20 new best practices
 
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation 20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
 
How Intuit Leveraged AWS OpsWorks as the Engine of Our PaaS (DMG305) | AWS re...
How Intuit Leveraged AWS OpsWorks as the Engine of Our PaaS (DMG305) | AWS re...How Intuit Leveraged AWS OpsWorks as the Engine of Our PaaS (DMG305) | AWS re...
How Intuit Leveraged AWS OpsWorks as the Engine of Our PaaS (DMG305) | AWS re...
 
Amazon의 머신러닝 솔루션: Fraud Detection & Predictive Maintenance - 남궁영환 (AWS 데이터 사이...
Amazon의 머신러닝 솔루션: Fraud Detection & Predictive Maintenance - 남궁영환 (AWS 데이터 사이...Amazon의 머신러닝 솔루션: Fraud Detection & Predictive Maintenance - 남궁영환 (AWS 데이터 사이...
Amazon의 머신러닝 솔루션: Fraud Detection & Predictive Maintenance - 남궁영환 (AWS 데이터 사이...
 
[AWS Dev Day] 인공지능 / 기계 학습 | AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...
[AWS Dev Day] 인공지능 / 기계 학습 |  AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...[AWS Dev Day] 인공지능 / 기계 학습 |  AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...
[AWS Dev Day] 인공지능 / 기계 학습 | AWS 기반 기계 학습 자동화 및 최적화를 위한 실전 기법 - 남궁영환 AWS 솔루션...
 
게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 - 유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...
게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 -  유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 -  유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...
게임 고객사를 위한 ‘AWS 컨테이너 교육’ 자료 - 유재석 솔루션즈 아키텍트, AWS :: Gaming Immersion Day 201...
 
AWSome Day Glasgow | Technical Track
AWSome Day Glasgow | Technical TrackAWSome Day Glasgow | Technical Track
AWSome Day Glasgow | Technical Track
 
20190306 AWS Black Belt Online Seminar Amazon EC2スポットインスタンス
20190306 AWS Black Belt Online Seminar Amazon EC2スポットインスタンス20190306 AWS Black Belt Online Seminar Amazon EC2スポットインスタンス
20190306 AWS Black Belt Online Seminar Amazon EC2スポットインスタンス
 
클라우드 기반 데이터 분석 및 인공 지능을 위한 비지니스 혁신 - 윤석찬 (AWS 테크에반젤리스트)
클라우드 기반 데이터 분석 및 인공 지능을 위한 비지니스 혁신 - 윤석찬 (AWS 테크에반젤리스트)클라우드 기반 데이터 분석 및 인공 지능을 위한 비지니스 혁신 - 윤석찬 (AWS 테크에반젤리스트)
클라우드 기반 데이터 분석 및 인공 지능을 위한 비지니스 혁신 - 윤석찬 (AWS 테크에반젤리스트)
 
Kubernetes/ EKS - 김광영 (AWS 솔루션즈 아키텍트)
Kubernetes/ EKS - 김광영 (AWS 솔루션즈 아키텍트)Kubernetes/ EKS - 김광영 (AWS 솔루션즈 아키텍트)
Kubernetes/ EKS - 김광영 (AWS 솔루션즈 아키텍트)
 
20200218 AWS Black Belt Online Seminar Next Generation Redshift
20200218 AWS Black Belt Online Seminar Next Generation Redshift20200218 AWS Black Belt Online Seminar Next Generation Redshift
20200218 AWS Black Belt Online Seminar Next Generation Redshift
 
How to Manage Cloud Infrastructures using Zend Framework
How to Manage Cloud Infrastructures using Zend FrameworkHow to Manage Cloud Infrastructures using Zend Framework
How to Manage Cloud Infrastructures using Zend Framework
 
AWS Container Services – 유재석 (AWS 솔루션즈 아키텍트)
AWS Container Services – 유재석 (AWS 솔루션즈 아키텍트)AWS Container Services – 유재석 (AWS 솔루션즈 아키텍트)
AWS Container Services – 유재석 (AWS 솔루션즈 아키텍트)
 
[AWS Builders] Effective AWS Glue
[AWS Builders] Effective AWS Glue[AWS Builders] Effective AWS Glue
[AWS Builders] Effective AWS Glue
 
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
AWS Black Belt Online Seminar 2018 re:Invent Recap: Compute, Container and Ne...
 
IVS CTO Night And Day 2018 Winter - [re:Cap] Containers & Microservices
IVS CTO Night And Day 2018 Winter - [re:Cap] Containers & MicroservicesIVS CTO Night And Day 2018 Winter - [re:Cap] Containers & Microservices
IVS CTO Night And Day 2018 Winter - [re:Cap] Containers & Microservices
 
AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)
AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)
AWS Batch를 통한 손쉬운 일괄 처리 작업 관리하기 - 윤석찬 (AWS 테크에반젤리스트)
 
AWS Summit 2011: Overview of Security and Compliance in the cloud
AWS Summit 2011: Overview of Security and Compliance in the cloudAWS Summit 2011: Overview of Security and Compliance in the cloud
AWS Summit 2011: Overview of Security and Compliance in the cloud
 

Similar to Amazon shafaq v6-10-12-11

Amazon Web Services OverView
Amazon Web Services OverViewAmazon Web Services OverView
Amazon Web Services OverView
Ariel K
 
Scaling up to your first 10 million users - Pop-up Loft Tel Aviv
Scaling up to your first 10 million users - Pop-up Loft Tel AvivScaling up to your first 10 million users - Pop-up Loft Tel Aviv
Scaling up to your first 10 million users - Pop-up Loft Tel Aviv
Amazon Web Services
 
Journey Towards Scaling Your Application to Million Users
Journey Towards Scaling Your Application to Million UsersJourney Towards Scaling Your Application to Million Users
Journey Towards Scaling Your Application to Million Users
Adrian Hornsby
 
Log Analysis At Scale
Log Analysis At ScaleLog Analysis At Scale
Log Analysis At Scale
Amazon Web Services
 
Amazon web services in the cloud computing landscape
Amazon web services in the cloud computing landscapeAmazon web services in the cloud computing landscape
Amazon web services in the cloud computing landscape
lodeblomme
 
cse40822-amazon.pptx
cse40822-amazon.pptxcse40822-amazon.pptx
cse40822-amazon.pptx
prathamgunj
 
Scaling on AWS for the First 10 Million Users at Websummit Dublin
Scaling on AWS for the First 10 Million Users at Websummit DublinScaling on AWS for the First 10 Million Users at Websummit Dublin
Scaling on AWS for the First 10 Million Users at Websummit Dublin
Amazon Web Services
 
Scaling on AWS for the First 10 Million Users at Websummit Dublin
Scaling on AWS for the First 10 Million Users at Websummit DublinScaling on AWS for the First 10 Million Users at Websummit Dublin
Scaling on AWS for the First 10 Million Users at Websummit Dublin
Ian Massingham
 
Create cloud service on AWS
Create cloud service on AWSCreate cloud service on AWS
Create cloud service on AWS
Amazon Web Services
 
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
Amazon Web Services
 
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch ServiceBDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
Amazon Web Services
 
Oracle Peoplesoft on AWS: A quick introduction
Oracle Peoplesoft on AWS: A quick introductionOracle Peoplesoft on AWS: A quick introduction
Oracle Peoplesoft on AWS: A quick introduction
Tom Laszewski
 
Using Data Lakes: Data Analytics Week SF
Using Data Lakes: Data Analytics Week SFUsing Data Lakes: Data Analytics Week SF
Using Data Lakes: Data Analytics Week SF
Amazon Web Services
 
ENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million UsersENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million Users
Amazon Web Services
 
ENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million UsersENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million Users
Amazon Web Services
 
Scaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million UsersScaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million Users
Amazon Web Services
 
Scaling up to Your First 10 Million Users
Scaling up to Your First 10 Million UsersScaling up to Your First 10 Million Users
Scaling up to Your First 10 Million Users
Amazon Web Services
 
Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)
Amazon Web Services
 
AWS Summit Sydney 2014 | Scaling on AWS for the First 10 Million Users
AWS Summit Sydney 2014 | Scaling on AWS for the First 10 Million UsersAWS Summit Sydney 2014 | Scaling on AWS for the First 10 Million Users
AWS Summit Sydney 2014 | Scaling on AWS for the First 10 Million Users
Amazon Web Services
 

Similar to Amazon shafaq v6-10-12-11 (20)

Amazon Web Services OverView
Amazon Web Services OverViewAmazon Web Services OverView
Amazon Web Services OverView
 
Scaling up to your first 10 million users - Pop-up Loft Tel Aviv
Scaling up to your first 10 million users - Pop-up Loft Tel AvivScaling up to your first 10 million users - Pop-up Loft Tel Aviv
Scaling up to your first 10 million users - Pop-up Loft Tel Aviv
 
Journey Towards Scaling Your Application to Million Users
Journey Towards Scaling Your Application to Million UsersJourney Towards Scaling Your Application to Million Users
Journey Towards Scaling Your Application to Million Users
 
Demandware krueger
Demandware kruegerDemandware krueger
Demandware krueger
 
Log Analysis At Scale
Log Analysis At ScaleLog Analysis At Scale
Log Analysis At Scale
 
Amazon web services in the cloud computing landscape
Amazon web services in the cloud computing landscapeAmazon web services in the cloud computing landscape
Amazon web services in the cloud computing landscape
 
cse40822-amazon.pptx
cse40822-amazon.pptxcse40822-amazon.pptx
cse40822-amazon.pptx
 
Scaling on AWS for the First 10 Million Users at Websummit Dublin
Scaling on AWS for the First 10 Million Users at Websummit DublinScaling on AWS for the First 10 Million Users at Websummit Dublin
Scaling on AWS for the First 10 Million Users at Websummit Dublin
 
Scaling on AWS for the First 10 Million Users at Websummit Dublin
Scaling on AWS for the First 10 Million Users at Websummit DublinScaling on AWS for the First 10 Million Users at Websummit Dublin
Scaling on AWS for the First 10 Million Users at Websummit Dublin
 
Create cloud service on AWS
Create cloud service on AWSCreate cloud service on AWS
Create cloud service on AWS
 
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
AWS Summit London 2014 | Scaling on AWS for the First 10 Million Users (200)
 
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch ServiceBDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
BDA402 Deep Dive: Log Analytics with Amazon Elasticsearch Service
 
Oracle Peoplesoft on AWS: A quick introduction
Oracle Peoplesoft on AWS: A quick introductionOracle Peoplesoft on AWS: A quick introduction
Oracle Peoplesoft on AWS: A quick introduction
 
Using Data Lakes: Data Analytics Week SF
Using Data Lakes: Data Analytics Week SFUsing Data Lakes: Data Analytics Week SF
Using Data Lakes: Data Analytics Week SF
 
ENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million UsersENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million Users
 
ENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million UsersENT309 Scaling Up to Your First 10 Million Users
ENT309 Scaling Up to Your First 10 Million Users
 
Scaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million UsersScaling on AWS for the First 10 Million Users
Scaling on AWS for the First 10 Million Users
 
Scaling up to Your First 10 Million Users
Scaling up to Your First 10 Million UsersScaling up to Your First 10 Million Users
Scaling up to Your First 10 Million Users
 
Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)Why Scale Matters and How the Cloud is Really Different (at scale)
Why Scale Matters and How the Cloud is Really Different (at scale)
 
AWS Summit Sydney 2014 | Scaling on AWS for the First 10 Million Users
AWS Summit Sydney 2014 | Scaling on AWS for the First 10 Million UsersAWS Summit Sydney 2014 | Scaling on AWS for the First 10 Million Users
AWS Summit Sydney 2014 | Scaling on AWS for the First 10 Million Users
 

Recently uploaded

A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 

Recently uploaded (20)

A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 

Amazon shafaq v6-10-12-11

  • 1. Amazon SDK on Android Devices CTIA ENTERPRISE AND APPLICATIONS 2011 Shafaq Abdullah Principal/Architect, Software October 12, 2011 Twitter: @shafaq110 Shafaq.abdullah@zenprise.com © 2011 Zenprise, Inc. All rights reserved. 0
  • 2. Amazon Web Services • Storage • Database • Messaging • Compute • Monitoring © 2011 Zenprise, Inc. All rights reserved. 1
  • 3. Amazon Web Services • Amazon S3 • Amazon Simple Db • Amazon SQS • Amazon SNS © 2011 Zenprise, Inc. All rights reserved. 2
  • 4. REST • Resource • Resource’s URI • Resource’s Representation © 2011 Zenprise, Inc. All rights reserved. 3
  • 5. CRUD Operation Description Http Method Read Just read, without modifying GET Delete Delete resource DELETE Create Create a new resource PUT /POST Update Modify resource's value POST/PUT © 2011 Zenprise, Inc. All rights reserved. 4
  • 6. AWS Demo © 2011 Zenprise, Inc. All rights reserved. 5
  • 7. AWS Demo © 2011 Zenprise, Inc. All rights reserved. 6
  • 8. S3 Storage Schema • Similar to files and folders • No bucket(s) inside bucket © 2011 Zenprise, Inc. All rights reserved. 7
  • 9. Amazon S3 Bucket Amazon S3 Your S3 Bucket Object 1 Object 2 Object 3 © 2011 Zenprise, Inc. All rights reserved. 8
  • 10. Creating a Bucket in S3 AWSAuthConnection conn = new AWSAuthConnection (accessKeyId, secretAccessKey, false, Utils.DEFAULT_HOST, Utils.INSECURE_PORT, CallingFormat.getPathCallingFormat()); Response createResponse = conn.createBucket(“TestBucket”, null, null); //PUT © 2011 Zenprise, Inc. All rights reserved. 9
  • 11. Amazon Console © 2011 Zenprise, Inc. All rights reserved. 10
  • 12. Amazon S3 is Restful • Stateless • Client-Server • Layered Architecture • Uniform Interface • Cacheable • Coding on Demand (optional) © 2011 Zenprise, Inc. All rights reserved. 11
  • 13. Security Principles • Build Security in every layer • Group based rule for controlling access in every layer • Limit access to specific IP ranges • Encrypt stored data • Encrypt data in-transit • Rotate AWS credentials, Multifactor authentication © 2011 Zenprise, Inc. All rights reserved. 12
  • 14. Amazon Account Setup • Access Credentials: Your Access Keys, X.509 Certificates, and Key Pairs • Sign-In Credentials: Your E-mail Address, Password, and AWS Multi-Factor Authentication Device • Account Identifiers: Your AWS Account ID and Canonical User ID © 2011 Zenprise, Inc. All rights reserved. 13
  • 15. AWS Account Identifiers • AWS uses two types of account identifiers • The canonical user ID can be used exclusively for Amazon S3 resources such as buckets or files • The AWS account ID can be used for all AWS service resources except Amazon S3 © 2011 Zenprise, Inc. All rights reserved. 14
  • 16. Amazon S3 Client • Public List<Bucket> listBuckets • Public Bucket createBucket(String bucketName) • Public ObjectMetadata getObjectMetadata(String bucketName, String key) • Public S3Object getObject(String bucketName, String key) • Public PutObjectResult putObject(String bucketName, String key, File file) © 2011 Zenprise, Inc. All rights reserved. 15
  • 17. Amazon Simple DB Description • Hierarchy for DataStorage in SImpleDB - Domains - Items - Attributes © 2011 Zenprise, Inc. All rights reserved. 16
  • 18. Simple DB Storage Model © 2011 Zenprise, Inc. All rights reserved. 17
  • 19. Data Creation in SimpleDB • Region Selection US East (Northern Virginia), US West (Northern California), EU (Ireland) Asia Pacific (Singapore), Asia Pacific (Tokyo) Regions • AmazonSimpleDBAsyncClient: has followoing methods for Data Creation CreateDomain DeleteDomain ListDomains DomainMetadata © 2011 Zenprise, Inc. All rights reserved. 18
  • 20. Retrieving Data in Simple DB • GetAttributes to retrieve a specific item • Select to query your data set for items that meet specified criteria © 2011 Zenprise, Inc. All rights reserved. 19
  • 21. API Highlight of Amazon Simple DB • CreateDomain — Create a domain that contains your dataset. • DeleteDomain — Delete a domain. • ListDomains — List all domains. • DomainMetadata — Retrieve information about creation time for the domain, storage information both as counts of item names and attributes, as well as total size in bytes. • PutAttributes — Add or update an item and its attributes, or add attribute-value pairs to items that exist already. Items are automatically indexed as they are received. • BatchPutAttributes — For greater overall throughput of bulk writes, perform up to 25 PutAttribute operations in a single call. • DeleteAttributes — Delete an item, an attribute, or an attribute value. • BatchDeleteAttributes — For greater overall throughput of bulk deletes, perform up to 25 DeleteAttributes operations in a single call. • GetAttributes — Retrieve an item and all or a subset of its attributes and values. • Select — Query the data set in the familiar Example: select * from mydomain where every(keyword) = ‘Car’. Order results using the SORT operator, and count items that meet the condition(s) specified by the predicate(s) in a query using the Count operator. © 2011 Zenprise, Inc. All rights reserved. 20
  • 22. SimpleDB Use Case S3ObjectID Date Last Subject Comments Rating Tags Created Modified 0001 10-10-2011 10-10-2011 • Science • Good A • Information • Animal • Fair • Nature History © 2011 Zenprise, Inc. All rights reserved. 21
  • 23. Simple DB: Read Operation Eventually Consistent Read Consistent Read Stale reads possible No stale reads Lowest read latency Higher read latency Highest read throughput Lower read throughput http://www.allthingsdistributed.com/2010/02/strong_consistency_simpledb.html © 2011 Zenprise, Inc. All rights reserved. 22
  • 24. Amazon SQS • Used to pass messages asynchronously between two distributed applications © 2011 Zenprise, Inc. All rights reserved. 23
  • 26. Amazon SQS • A single queue can be shared with multiple server • A server can “lock” the message under process with a timeout, if its not able to delelte it within the timeout then the lock is relinquished © 2011 Zenprise, Inc. All rights reserved. 25
  • 27. Basic SQS API • CreateQueue: Create queues for use with your AWS account • ListQueues: List your existing queues • DeleteQueue: Delete one of your queues • SendMessage: Add any data entries to a specified queue • ReceiveMessage: Return one or more messages from a specified queue © 2011 Zenprise, Inc. All rights reserved. 26
  • 28. Life Cycle of SQS API • System uses SendMessage to add a new message to it SQS • A different system that processes messages needs more messages to process, so it calls ReceiveMessage • Once a message has been returned by ReceiveMessage, it will not be returned by any other ReceiveMessage until the visibility timeout has passed • If the system that processes messages successfully finishes working with this message, it calls DeleteMessage, which removes the message from the queue so no one else will ever process it © 2011 Zenprise, Inc. All rights reserved. 27
  • 29. Amazon SNS • A highly scalable, flexible, and cost-effective capability to publish messages from an application and immediately deliver them to subscribers or other application • SNS push and SQS poll mechanism © 2011 Zenprise, Inc. All rights reserved. 28
  • 30. NetFlix and AWS http://qcontokyo.com/pdf/adriancockroft.pdf © 2011 Zenprise, Inc. All rights reserved. 29
  • 31. © 2011 Zenprise, Inc. All rights reserved. 30