journey through the cloud - mobile & social apps

50
Journey through the Cloud: Mobile & Social Apps Ian Massingham – Technical Evangelist @IanMmmm

Upload: amazon-web-services

Post on 04-Jul-2015

498 views

Category:

Technology


4 download

DESCRIPTION

Many customers build the back-end infrastructure that powers their mobile apps with AWS services such as Amazon EC2, Amazon S3, Amazon DynamoDB, Amazon SNS Mobile Push, and Amazon RDS. AWS provides a range of services that are designed specifically to help mobile app developers quickly and easily build apps that can scale from tens to hundreds of millions of users, and reach global scale with minimum effort. With AWS, developers need only pay for what they use, with no up-front fees, or long-term commitments. The slides from this AWS webinar will help you learn about AWS services specifically designed to help mobile app developers with identity management & sync (Amazon Cognito), analytics (Amazon Mobile Analytics), and push notifications (Amazon SNS Mobile Push). We also explain how you can easily include these services in your apps using the AWS Mobile SDK. Watch a YouTube recording of this webinar here: http://youtu.be/LA9kjxDLk9k

TRANSCRIPT

Page 1: Journey Through the Cloud - Mobile & Social Apps

Journey through the Cloud:

Mobile & Social Apps

Ian Massingham – Technical Evangelist @IanMmmm

Page 2: Journey Through the Cloud - Mobile & Social Apps

Common use cases & stepping stones into the AWS cloud Learning from customer journeys

Best practices to bootstrap your projects

Journey through the cloud

Page 3: Journey Through the Cloud - Mobile & Social Apps

AWS helps mobile app developers quickly & easily build apps Scale from tens to hundreds of millions of users

Reach global scale with minimum effort Only pay for what you use, with no up-front fees

Mobile & Social Apps

Page 4: Journey Through the Cloud - Mobile & Social Apps

Why AWS for Mobile & Social Apps? Identity Management & Sync Analytics Push Notifications Other AWS Services & the AWS Mobile SDK

Agenda

Page 5: Journey Through the Cloud - Mobile & Social Apps

Why AWS for Mobile & Social Apps?

Page 6: Journey Through the Cloud - Mobile & Social Apps

Customers Using AWS for Social & Mobile Applications

Page 7: Journey Through the Cloud - Mobile & Social Apps

How to build a mobile app today?

Page 8: Journey Through the Cloud - Mobile & Social Apps

Authenticate users

Authorize access

Store and share media

Synchronize data

Deliver media

Store shared data

Stream real-time data Track Retention

Send push notifications

Manage users and identity providers

Securely access cloud resources

Sync user prefs across devices

Track active users, engagement

Manage funnels, Campaign performances

Store user-generated photos Media and share them

Automatically detect mobile devices Deliver content quickly globally

Bring users back to your app by sending messages reliably

Store and query fast NoSQL data across users and devices

Collect real-time clickstream logs and take actions quickly

Your Mobile

App

Analyze User Behavior

Page 9: Journey Through the Cloud - Mobile & Social Apps

Authenticate users

Authorize access

Store and share media

Synchronize data

AWS Mobile SDK

Amazon Mobile Analytics

Deliver media

Amazon Cognito (Sync)

AWS Identity and Access Management

Amazon Cognito (Identity Broker)

Amazon S3 Transfer Manager

Amazon CloudFront (Device Detection)

Store shared data Amazon DynamoDB (Object Mapper)

Stream real-time data Amazon Kinesis (Recorder)

Track Retention Amazon Mobile Analytics

Send push notifications Amazon SNS Mobile Push

Your Mobile

App

Analyze User Behavior

Page 10: Journey Through the Cloud - Mobile & Social Apps

AWS Mobile Services

Amazon Cognito Amazon Mobile Analytics Amazon SNS Mobile Push

Kinesis Connector DynamoDB Connector S3 Connector SQS Connector SES Connector

AWS Global Infrastructure (10 Regions, Availability Zones, 51 Edge Locations)

Core Building Block Services

Mobile Optimized Connectors

Mobile Optimized Services

Your Mobile App, Game or Device App AWS Mobile SDK, API Endpoints, Management Console

Compute Storage Networking Analytics Databases

Integrated SDK

Page 11: Journey Through the Cloud - Mobile & Social Apps

Identity Management & Sync

Page 12: Journey Through the Cloud - Mobile & Social Apps

Amazon Cognito

Simplifies Identity and Access Management

Securely access all AWS services from

Mobile device

Cross-device and Cross-platform Sync

Implement security best practices

“Your App data is secure, available offline, and kept in sync between devices”

Synchronize user’s data across devices and

platforms

Manage users as unique identities across

identity providers

Guest

Your own Auth

Page 13: Journey Through the Cloud - Mobile & Social Apps

Identity Providers

Unique Identities Joe Anna Bob

Any Device Any Platform

Any AWS Service

Helps implement security best practices Securely access any AWS Service from mobile device. It simplifies the interaction with AWS Identity and Access Management

Support Multiple Login Providers Easily integrate with major login providers for authentication.

Unique Users vs. Devices Manage unique identities. Automatically recognize unique user across devices and platforms.

Amazon Cognito Identity

Mobile Analytics

S3 DynamoDB Kinesis

Your own Auth

Page 14: Journey Through the Cloud - Mobile & Social Apps

Amazon Cognito for Unauthenticated Identities

Unique Identifier for Your “Things” “Headless” connected devices can also securely access cloud services.

Save Data to the Cloud Save app and device data to the cloud and merge them after login

Guest User Access Securely access AWS resources and leverage app features without the need to create an account or logging in

Visitor Preferences

Cognito Store

Guest

EC2 S3 DynamoDB Kinesis

Page 15: Journey Through the Cloud - Mobile & Social Apps

Amazon Cognito Security Architecture

Cognito ID (Temp

Credentials)

DynamoDB

End Users

Developer

Access to AWS

Services

Cognito Identity Broker

Login OAUTH/OpenID Access Token

Cognito ID, Temp

Credentials

S3

Mobile Analytics

Cognito Sync Store

AWS Management

Console

Access Token Pool ID

Role ARNs

App with AWS Mobile

SDK

Your own Auth

Page 16: Journey Through the Cloud - Mobile & Social Apps

Synchronize data across devices : Amazon Cognito (Sync)

Page 17: Journey Through the Cloud - Mobile & Social Apps

What have customers told us about “Synchronized Profile” People have multiple devices and want to transition between devices. Implementing a user profile that syncs across devices, OS, apps is hard. It not only has to work when offline, but easy to integrate with existing apps.

Page 18: Journey Through the Cloud - Mobile & Social Apps

Amazon Cognito Sync

User Data Storage and Sync

Any Platform

iOS/Android/FireOS

Store App Data, Preferences and State Save app and device data to the cloud and merge them after login

Cross-device Cross-OS Sync Sync user data and preferences across devices with one line of code

Work Offline Data always stored in local SQLite DB first. Works seamlessly when intermittent or no connectivity

k/v data

Identity pool

Page 19: Journey Through the Cloud - Mobile & Social Apps

Amazon Cognito Sync Offline: The client SDK manages a local SQLite data store to allow the app to work even when connectivity is not available. Fast: The methods to read and write data only interact with the local SQLite database. Intelligent Sync: The sync method compares the local version of the data to the cloud sync store, pushes up deltas and pulls down new changes. Flexible Conflict resolution: The sync method first reads the changes then writes its local changes to the cloud sync store By default Cognito assumes that the last write wins. Developers can override and implement their own conflict resolution programmatically

Local SQLite Cache

Page 20: Journey Through the Cloud - Mobile & Social Apps
Page 21: Journey Through the Cloud - Mobile & Social Apps
Page 22: Journey Through the Cloud - Mobile & Social Apps
Page 23: Journey Through the Cloud - Mobile & Social Apps
Page 24: Journey Through the Cloud - Mobile & Social Apps
Page 25: Journey Through the Cloud - Mobile & Social Apps

Analytics

Page 26: Journey Through the Cloud - Mobile & Social Apps

What Customers Told Us About “Mobile Analytics”

Developers deeply value user analytics and consider it an integral part of their app development process. They want to monitor their most important metrics in a timely manner, and take action quickly. They would like to own their mobile data, just like they do with any other AWS service.

Page 27: Journey Through the Cloud - Mobile & Social Apps

Amazon Mobile Analytics

Scalable and Generous Free Tier

Focus on metrics that matter. Usage reports

available within 60 minutes of receiving data

from an app

Fast

Scale to billions of events per day from

millions of users.

Own Your Data

“Easily collect, visualize and understand your app usage data at scale”

Data collected are not shared, aggregated, or

reused

Page 28: Journey Through the Cloud - Mobile & Social Apps

Getting Started with Mobile Analytics in 3 steps

Sign up for AWS Account and create or use existing Cognito ID in the AWS Management Console

View engagement and session activity reports in the AWS Management console within minutes

Download and integrate the Mobile SDK with a few lines of code (Android/FireOS, iOS)

Page 29: Journey Through the Cloud - Mobile & Social Apps
Page 30: Journey Through the Cloud - Mobile & Social Apps
Page 31: Journey Through the Cloud - Mobile & Social Apps

Push Notifications

Page 32: Journey Through the Cloud - Mobile & Social Apps

What Customers Told Us About “Push Notifications”

Sending large-scale push notifications, cross-platform is still hard. Developers want to be able to reach their customers globally and across all devices.

Page 33: Journey Through the Cloud - Mobile & Social Apps

Some Use Cases

Broadcast Direct Closed Loop

Identical messages to many at once

Unique messages to individual customers

Targeted and optimized with analytics

Page 34: Journey Through the Cloud - Mobile & Social Apps

Each platform works differently, and push gets even more complex as you scale to support millions of devices.

Cloud App

Platform Services Mobile Apps

Page 35: Journey Through the Cloud - Mobile & Social Apps

Amazon SNS Cross-platform

Mobile Push

Internet

Apple APNS

Google GCM

Amazon ADM

Windows WNS and MPNS

Baidu CP

Industry’s First!

New!

With Amazon SNS, developers can send push notifications on multiple platforms and reach mobile users around the world

New features:

Message Expiry Time

Message Attributes

Amazon SNS Mobile Push

Android Phones and Tablets

Apple iPhones and iPads

Kindle Fire Devices

Android Phones and Tablets in China

iOS

Windows Desktop and Windows Phone Devices

Page 36: Journey Through the Cloud - Mobile & Social Apps

Other AWS Services & the AWS Mobile SDK

Page 37: Journey Through the Cloud - Mobile & Social Apps

AWS Mobile Services

Amazon Cognito Amazon Mobile Analytics Amazon SNS Mobile Push

Kinesis Connector DynamoDB Connector S3 Connector SQS Connector SES Connector

AWS Global Infrastructure (10 Regions, Availability Zones, 51 Edge Locations)

Core Building Block Services

Mobile Optimized Connectors

Mobile Optimized Services

Your Mobile App, Game or Device App AWS Mobile SDK, API Endpoints, Management Console

Compute Storage Networking Analytics Databases

Integrated SDK

Page 38: Journey Through the Cloud - Mobile & Social Apps

Fully Integrated AWS Mobile SDK •  Common authentication mechanism across

all services •  Automatically handle intermittent network

connections •  Cross-platform Support: Android (with Maven

support), iOS, Fire OS, Xamarin •  Native SDKs optimized for Mobile OS, for

example, uses the local offline caching architecture

•  Reduced memory footprint; Pick and choose the service jars you need

Page 39: Journey Through the Cloud - Mobile & Social Apps

Amazon S3 Connector: Transfer Manager

S3 Connector

Multipart upload media (photos, videos, audio) Fault tolerant download (e.g. assets) No backend required Automatic retries Pause, resume, cancel functions Optimized for native OS

Page 40: Journey Through the Cloud - Mobile & Social Apps

Joe Anna Bob

High Scores

Joe 1500

Anna 800

Bob 750

Amazon DynamoDB Connector: Object Mapper

Simplifies access to Amazon DynamoDB in you app Map client-side classes to Amazon DynamoDB tables Removes the need to transform objects into tables and vice versa

Page 41: Journey Through the Cloud - Mobile & Social Apps

Amazon Kinesis

Redshift S3 Kinesis enabled Apps on

EC2

AWS Mobile SDK

Amazon Kinesis Connector for Mobile Apps

For sophisticated User Behavior

Analysis

Integrated AWS Mobile SDK

Generic batching system that handles intermittent network connection and also optimize

battery utilization

For Crash Dump Analysis

Page 42: Journey Through the Cloud - Mobile & Social Apps

Where to go to learn more

Page 43: Journey Through the Cloud - Mobile & Social Apps

AWS Mobile Services

•  aws.amazon.com/mobile

AWS Mobile SDK

•  aws.amazon.com/mobile/sdk/

AWS Mobile Blog

•  mobile.awsblog.com

Resources

Page 44: Journey Through the Cloud - Mobile & Social Apps

Mobile Sessions from AWS re:Invent 2014

MBL301 - Beyond the App - Extend Your User Experience with Mobile Push Notifications - Featuring Mailbox MBL302 - Mastering Synchronization Across Mobile Devices, Login Providers, and the Web MBL303 - Get Deeper Insights Using Amazon Mobile Analytics MBL304 - Building Scalable Mobile Services with Global Footprints MBL305 - The World Cup Second Screen Experience

Page 45: Journey Through the Cloud - Mobile & Social Apps

Amazon Cognito Amazon Mobile Analytics

Amazon SNS Mobile Push

Free Tier: 1 Million push messages every month

Free Tier (for first 12 months): 1 Million syncs/month + 10GB of storage for Amazon Cognito

Free Tier: 100 Million events every month

Get Started for Free!

http://aws.amazon.com/mobile

Page 46: Journey Through the Cloud - Mobile & Social Apps

AWS Training & Certification Certification

aws.amazon.com/certification

Demonstrate your skills, knowledge, and expertise

with the AWS platform

Self-Paced Labs

aws.amazon.com/training/ self-paced-labs

Try products, gain new skills, and get hands-on

practice working with AWS technologies

aws.amazon.com/training

Training

Skill up and gain confidence to design, develop, deploy and

manage your applications on AWS

Page 47: Journey Through the Cloud - Mobile & Social Apps

Ian Massingham – Technical Evangelist @IanMmmm

@AWS_UKI for local AWS events & news

@AWScloud for Global AWS News and Announcements ©Amazon.com, Inc. and its affiliates. All rights reserved.

Page 48: Journey Through the Cloud - Mobile & Social Apps

We typically see customers start by trying our services

Get started now at : aws.amazon.com/getting-started

Page 49: Journey Through the Cloud - Mobile & Social Apps

You can get started for free…

Get started now at : aws.amazon.com/free

Page 50: Journey Through the Cloud - Mobile & Social Apps

Design your application for the AWS Cloud

More details on the AWS Architecture Center at : aws.amazon.com/architecture