63
Migrating Apps from Parse to AWS Keisuke Nishitani (@Keisuke69) Amazon Web Services Japan K.K . Jul 05, 2016

Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Migrating Apps from Parse to AWS

Keisuke Nishitani (@Keisuke69)

Amazon Web Services Japan K.K.

Jul 05, 2016

Page 2: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Profile

Keisuke NishitaniSolutions Architect, Amazon Web Service Japan K.K

@Keisuke69 Keisuke69

✤ ソリューションアーキテクト✤ クラウドを使ったアプリ開発とかモバイル開発の話しをよくします

✤ モバイルニンジャ1号機✤ RESTおじさん✤ Lambda Wizards

✤ 餃子の王将エヴァンジェリスト(自称)✤ 音楽が好きです、フジロッカーです、今年も行きます

✤ でもサマソニも毎年行きます✤ 小説大好き、マンガ大好き、空想好き✤ ブログ: http://keisuke69.hatenablog.jp/

Keisuke69 Keisuke69Keisuke69x

Page 3: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

AWS Black Belt Online Seminer へようこそ!

✤質問を投げることができます!

✤Adobe Connect のチャット機能を使って、質問を書き込んでください。(書き込んだ質問は、主催者にしか見えません)

✤Twitterへツイートする際はハッシュタグ #awsblackbelt をご利用ください。

①画面右下のチャットボックスに質問を書き込ん

でください

②吹き出しマークで送信してくださ

Page 4: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

内容についての注意点

✤本資料では2016年7月5日時点のサービス内容および価格についてご説明しています。最新の情報は AWS 公式ウェブサイト(http://aws.amazon.com) にてご確認ください。

✤資料作成には十分注意しておりますが、資料内の価格と AWS 公式ウェブサイト記載の価格に相違があった場合、AWS 公式ウェブサイトの価格を優先とさせていただきます。

✤価格は税抜表記となっています。日本居住者のお客様がサービスを使用する場合、別途消費税をご請求させていただきます。

AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with

the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this

document is provided only as an estimate of usage charges for AWS services based on certain information that you have

provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided.

Page 5: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

will shutdown Jan 28, 2017

Page 6: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Recommended timeline by Parse

✤April 28, 2016

✤Data migrated to a self-hosted MongoDB.

✤July 28, 2016

✤Finish setting up your self-hosted Parse Server and release a new app pointing

to it.

✤January 28, 2017

✤Parse shutdown.

Page 7: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

AWSに移行するメリット

✤モバイルアプリ開発に利用可能なサービスが提供されている

✤Amazon SNSなどParseが提供している機能相当のサービスを提供

✤その他にも、実デバイスでのテストを可能にするAWS Device FarmやAPIの提供・管理を容易にするAmazon API Gateway / AWS Lambdaなどのサービスも提供

✤自前で構築した場合でも運用の効率化・自動化ができる

✤オートスケーリング

✤APIを利用した運用作業の自動化

✤Elastic BeanstalkやCloudFormationを利用した構築作業の自動化

Page 8: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

マイグレーションの選択肢

✤Parse ServerとMongoDBをAWS上でセットアップし、稼働させる

✤Parse ServerはAWS Elastic Beanstalkを利用してセットアップすることも可能

✤MongoDBは自前で用意するだけでなくmLabなどのサービス利用も可能

✤Parse PushはAmazon SNS mobile pushへ

✤Parse AnalyticsはAmazon Mobile Analyticsへ

✤Parse UsersはAWS Cognito User Poolsへ

Page 9: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Parse Server

✤Parse終了に伴い、ParseがサービスのバックエンドをOSSとして公開したもの

✤Node.js 4.3とMongoDBの2.6.X/3.0.Xが必要

✤サービス版と全く同一のものが利用できるわけではない

✤AnalyticsやJobsなどが未サポート

✤Cloud Codeが同一ホスト上で稼働

✤Push通知ではスケジュール機能やレポート機能が未サポート

✤詳細はコンパチビリティガイドを参照

✤可用性やスケーラビリティは自身で考えて確保する必要がある

Page 10: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

移行のステップ

✤ Parse DBから用意したMongoDBへデータ移行

✤ローカルでParse Serverをセットアップし移行したDBを使ってテスト

✤ AWS上でParse Serverをセットアップしテスト

✤アクセス先を切り替えたアプリをリリース

✤詳細は以下のリンク先を参照https://parse.com/migration

Page 11: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

AWS Elastic Beanstalkを使用したParse Serverのセットアップ

Page 12: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

AWS Elastic Beanstalk

✤特徴 (http://aws.amazon.com/jp/elasticbeanstalk/)

✤速く簡単にアプリケーションをデプロイ可能

✤インフラストラクチャの準備&運営からアプリケーションスタックの管理まで自動化

✤Auto Scaling によりコストを抑えながらスケーラビリティを確保

✤Java, PHP, Ruby, Python, Node.js, .NET, Docker などに対応

✤価格体系 (http://aws.amazon.com/jp/elasticbeanstalk/pricing/)

✤追加料金なし✤アプリケーションの保存、実行に必要

なAWSリソース (EC2, S3, RDS, DynamoDB など) に対してのみ課金

インフラ構成の構築・アプリデプロイの自動化サービス

Page 13: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Elastic Beanstalkを利用したParse Serverの実行

✤ 以下のリンク先をクリックし、Parse ServerをElastic Beastalkで起動https://console.aws.amazon.com/elasticbeanstalk/home?region=us-east-

1#/newApplication?applicationName=ParseServer&solutionStackName=Node.js&tierName=WebS

erver&instanceType=t2.small&sourceBundleUrl=https://s3.amazonaws.com/elasticbeanstalk-

samples-us-east-1/eb-parse-server-sample/parse-server-example.zip

✤ アプリケーション名を設定し、「Review & Launch」をクリックするだけ

✤ Parse Server用のEC2インスタンスが設定されデプロイされる

Page 14: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

MongoDBのセットアップ(mLab利用)

✤mLabはAWS上で動かすMongoDBをサービスとして提供

✤もちろん、MongoDBインスタンスを手動でセットアップするのも問題なし※MongoDB on AWSに関する参考資料http://www.slideshare.net/AmazonWebServicesJapan/black-belt-online-seminar-awsmongodb

✤データ移行にはParse DashboardのMigrateオプションを利用すると簡単

Page 15: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

MongoDBのセットアップ(mLab利用)

✤ mLabにサインアップ

✤ 「Create new」をクリックし、新規データベースを作成

✤ 「Cloud Provider」としてAWSを選択し、自身の環境にあわせてPlanを選択

✤ Single-nodeの0.5GBが無償枠として提供されている

✤ 任意の名前をつけ「Create new MongoDB deployment」をクリック

Page 16: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

MongoDBのセットアップ(mLab利用)

✤作成したデータベースをクリックし、ユーザを追加

Page 17: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Elastic Beanstalkの設定

✤「Configuration」から「Software Configuration」を選択

✤Environment Propertiesの各値を自身の値に変更する

Page 18: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

AWS Mobileサービス

Page 19: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

AWS Mobile サービス

Cognito

Kinesis DynamoDB S3 SQS SES

グローバルインフラ

コアとなるサービス群

モバイルに最適化されたコネクタ

モバイルに最適化されたサービス

AWS SDK for Android

ストレージ データベース キュー メールコンピュートネットワーク

AWS Mobile SDK

Mobile Analytics SNS Mobile Push

AWS SDK for iOS AWS SDK for Unity

あなたのモバイルアプリ

ゲーム ユーティリティ ファイナンス エンターテインメント

Lambda

Device Farm API Gateway

AWS SDK for JavaScript

ソーシャル

Page 20: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Cognito SNS Mobile Push

S3

Mobile Analytics

Device Farm

Lambda

CloudFront

AWS Mobile Hub

Page 21: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

AWS Mobile Hub

✤ AWS上でモバイルアプリを作成する最も簡単な方法

✤ ユーザサインインといった典型的なユースケースの選択と設定

✤ 自動で必要なAWSサービスをプロビジョニング

✤ iOSとAndroid向けにプロビジョニングされたサービスを使って実際に機能するクイックスタートアプリを生成

✤ AWS Mobile Hub自体のご利用は無料※利用する各サービスの費用はかかります

Page 22: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

プロジェクトの作成と機能の追加

Page 23: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

例:User Sign-in

✤ユーザがどのようにサインインするか設定:

✤サインインなし、オプショナルもしくは必須

✤サインインプロバイダを設定:

✤ Facebook (Google, Twitter, Amazon etc)

✤独自のシステム(認証基盤)

✤クイックスタート用アプリにサインイン画面を追加

Powered by Amazon Cognito Identity

Page 24: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

例:Push通知

✤アプリへのプッシュ通知

✤iOS/Android

✤1:1 もしくはトピック

✤クイックスタートアプリでは以下の機能が含まれる

✤通知のEnable/Disable

✤SNSを使ったトークンの自動登録

✤サブスクライブするトピックの選択

Powered by Amazon SNS

Page 25: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

例:Cloud Logic

✤バックエンドのコードを実行

✤モバイルアプリから直接呼び出し

✤ JavaScript、Python、Javaに対応

✤コードを書くだけでよく、インフラの管理不要

Powered by AWS Lambda

Page 26: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

スターターアプリのダウンロード

Page 27: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

AWS Mobile SDK

✤Mobile OS へ最適化されたAWS SDK

✤オンライン・オフラインを自動でハンドリング✤ローカルオフラインキャシュを利用するアーキ

テクチャ

✤メモリフットプリントの削減

✤各プラットフォームのエンハンスに追従

iOS Android Fire OS Unity

Xamarin

Page 28: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Parse PushからAmazon SNSへの移行

Page 29: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Amazon SNSMobile Push

Internet

Apple APNS

Google GCM

Amazon ADM

Windows WNS and MPNS

Baidu CP

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 30: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 1: Parse Pushデータのエクスポート

✤Parseのコンソールにログインし、アプリケーションを選択

✤Core > Browserと進み、Installationを選択

✤右上のEditをクリック

✤Export this dataを選択

Page 31: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 1: Parse Pushデータのエクスポート

✤Exportをクリック

✤しばらくするとJSON形式でエクスポートされたデータ(Zipファイル)のダウンロードリンクがメールで届く

Page 32: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 1: Parse Pushデータのエクスポート

✤ エクスポートされたJSONファイルをダウンロードし、保存

✤ エクスポートされたデータには以下が含まれる

- deviceToken

- deviceType

- channels

Page 33: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 2: APNSとGCMのクレデンシャル取得

✤Parseを利用する際に作成したAPNSとGCM(もしくはどちらか)のクレデンシャルを取得する

✤iOSアプリケーション向け(APNS): Amazon SNSは.p12 push certificateを使用するが、これは自身のMacのKeychainからエクスポート可能。もし.p12を持っていないならこちらのチュートリアルのStep1を参照

✤Androidアプリケーション向け(GCM): Parseのアプリに紐付けているGoogle

Developers ProjectのAPI(Server)Keyを使う必要あり

✤Windowsアプリケーション向け(WNS): こちらの手順に従ってClient secret

とPackage Security Identifier (SID)を渡す必要あり

✤AWS Mobile Hubを利用してSNSリソースを作成するのに利用するため、これらのクレデンシャルを保存しておく

Page 34: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 3: AWSリソースの作成

✤マネージメントコンソール上でAWS Mobile Hubを選択する

✤「Get Started」を選択

Page 35: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 3: AWSリソースの作成

✤「First things first…」の内容を確認

✤パーミッションを許可するため「Yes, grant permissions」をクリック

Page 36: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 3: AWSリソースの作成

✤「Create new mobile project」を選択し、プロジェクト名を入力(例:Parse Migration)

✤プロジェクトが作成された後、「Push Notifications」のfeatureを追加

Page 37: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 3: AWSリソースの作成

✤「Click Enable push」をクリックし、プラットフォームを選択

✤各プラットフォームのクレデンシャルをアップロードし、「Save

changes」をクリック

Page 38: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 3: AWSリソースの作成

✤Mobile Hubのコンソールの左パネルでResourcesをクリック

✤Amazon SNS Platform Applicationsで、ハイライトされた名前をコピーしテンポラリの場所に保存

✤Amazon SNS Topicsで、トピック名をコピーしテンポラリの場所に保存

Page 39: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 3: AWSリソースの作成

✤完全修飾なSNSのplatform application名は以下のようになり、ハイライトされた箇所がStep 4で移行ツールに渡すアプリケーション名になる

arn:aws:sns:us-east-

1:xxxxxxxxxxxx:app/APNS/parse_MOBILEHUB_1768078787

Page 40: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 3: AWSリソースの作成

✤移行ツールの利用にはAWSクレデンシャルが必要なため、事前に取得する

✤以下のリンクからAWSクレデンシャルコンソールにアクセス

https://console.aws.amazon.com/iam/home?region=us-east-

1#security_credential

✤「Continue to Security Credentials」をクリック

Page 41: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 3: AWSリソースの作成

✤「Access Keys (Access Key and Secret Access Key)」をクリック

✤「Create New Access Key」をクリック

Page 42: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 3: AWSリソースの作成

✤「Create Access Key」で「Show Access Key」を選択

✤「Access Key ID」と「Secret Access Key」の両方をコピーし保存

Page 43: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Step 4: Parse Pushデータのインポート

✤ 以下のリンクからParse Push migration toolをダウンロードhttps://s3.amazonaws.com/sns.region/SNSImportTool.jar

✤ 移行ツールは自分のMac/PCから実行可能なスタンドアロンjarファイル✤ 前のステップで集めた情報をパラメータ形式でツールに渡す✤ Javaの実行環境が必要

✤ 以下のように必要なオプションに適切な値を指定してコマンド実行java -jar SNSImportTool.jar -s -f <PATH_TO_EXPORTED_PARSE_INSTALLATION_.JSON_FILE>

--apnsName <APNS_PLATFORM_APP_NAME_STEP>

--gcmName <GCM_PLATFORM_APP_NAME_STEP>

--wnsName <WNS_PLATFORM_APP_NAME_STEP>

--topicName <SNS_TOPIC_NAME_STEP>

--awsaccess <AWS_KEY_ID_STEP>

--awssecret <SECRET_ACCESS_KEY_STEP>

Page 44: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

移行ツール

✤指定されたPlatformApplicationを検証

✤PlatformEndpointをエクスポートされたJSONファイル内のユニークなトークンごとに作成

✤ユニークなchannelごとにSNS Topicを作成し、これらのTopicに対してPlatformEndpointを登録

✤「parse_alldevices」というTopicを作成し、全てのPlatformEndpointを登録

Page 45: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

機能 Parse Push Amazon SNS

サブスクリプション Yes - channel Yes - topic

高度なターゲティング Yes – オブジェクト、ユーザ、クエリ、ジオポイント No

カスタムセグメント Yes – Saved Audiences No

スケジュール通知 Yes (Android/Windowsのみ) No

A/B テスト Yes – Push Experiments No

Pushのローカライズ Yes No

バッジインクリメント Yes – (iOSのみ) No

期限設定 Yes Yes

バックグラウンド/サイレントPush Yes Yes

サウンド Yes Yes

キャンペーン Yes No

Token Feedback No Yes

Token/Endpoint イベントトリガー Yes Yes

Delivery Success/Failureの100%ログ出力 No (“Generic” Push Delivery Reportのみ)

Yes (ターゲットしたendpointごとにsuccess/failureを100%ログ出力)

Parse Pushとの対応

Page 46: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Parse AnalyticsからAmazonMobile Analyticsへの移行

Page 47: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Amazon Mobile Analytics

利用状況に関するデータを大規模に収集、自動的に可視化アプリケーション側はAmazon Mobile SDKを組み込むだけ

生データをS3/Redshiftへ自動エクスポート可能既存のユーザマスタの突き合わせ等によるより深い分析が可能CSVでのダウンロードも可能

高速かつスケーラブルデータを受け取ったら60分以内にレポート反映数百万のユーザーからの数十億イベント/日を収集・処理可能

クロスプラットフォーム各種デバイス、OS(Android, iOS, FireOS)からデータを送信可能AWS SDK for JavaScriptでもサポート

Page 48: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

ビジネス上重要な指標

1. Monthly Active Users (MAU)

2. Daily Active Users (DAU) 3. New Users, 4. Daily Sessions, 5. Sticky Factor, 6. 1-Day Retention, 7. Avg. Revenue per DAU, 8. Daily Paying Users,9. Avg. Paying DAU

Page 49: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

継続率のトラッキング

ユーザの継続率はマーケティング、新機能、UI変更やアプリ更新の効果を測る際の重要な指標

日次/週次でユーザ再訪率に関する4つのチャートを提供

Page 50: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

アプリ固有のアクションに関して行動分析が可能

特定イベントの発生頻度に関するレポートを提供。各イベントに属性やメトリックを追加可能。

サンプル

Track the number of Likes/Shares, per article, in a news app

Understand player abort rates per level, in a game

Number of songs played, per user session, in a music app

In-app item popularity in a shopping app

カスタムイベントのトラッキング

Page 51: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Amazon Mobile Analyticsの利用

✤Amazon SNSと同様の手順でAWS Mobile Hubを利用してプロジェクトを作成

✤「App Analytics」のfeatureを追加

Page 52: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Amazon Mobile Analyticsの利用

✤「Add analytics」を選択し、「Save changes」をクリック

Page 53: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Amazon Mobile Analyticsの利用

✤左パネルから「Build」を選択し、対象プラットフォームを選択する

Page 54: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Parse Analyticsとの対応Feature Parse Analytics (Client-side) Amazon Mobile Analytics

Active UsersYes - Daily Active Users (DAU), Weekly Active Users (WAU), Monthly Active Users (MAU), and Installations

Yes - Daily Active Users (DAU), Monthly Active Users (MAU), and Installations

Sessions Yes – App OpensYes - Session Count and Average Sessions per Daily Active User

Custom Events Yes Yes

Revenue NoYes - Average Revenue per Daily Active User (ARPDAU) and Average Revenue per Paying Daily Active User (ARPPDAU)

Retention YesYes - Day 1, 3, and 7 Retention and Week 1, 2, and 3 Retention

Sticky Factor No Yes - DAU divided by MAU

Console ReportsYes - Overview, Audience, Events, Saved/Recent Queries

Yes - Overview, Active Users, Sessions, Retention, Revenue, and Custom Events

Download Reports Yes - CSV format Yes - CSV format

Auto Export NoYes - Amazon Simple Storage Service (Amazon S3) bucket and Amazon Redshift cluster

Page 55: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Amazon Cognito User Pools

Page 56: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

Amazon Cognito Identity User Pools (Beta)

モバイルおよび Web アプリに

サインアップとサインインの機能を簡単に追加

ユーザ管理を簡単に

電話番号や email アドレスの検証と多要素認証の提供

拡張されたセキュリティ機能

数億のユーザまでスケールするユーザディレクトリを作成・管理するシンプル、セキュア、低コストでフルマネージドなサー

ビス

マネージド型ユーザディレクトリ

Page 57: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

幅広いユーザシナリオ

Email もしくは電話番号による確認

パスワード紛失

ユーザのサインアップとサインイン

アカウントを確認するための Email アドレスや電話番号の検証

パスワードを紛失した場合にユーザは自分自身でパスワード変更可能

Email、電話番号もしくはユーザ名とパスワードを使用したサインアップサインアップ後のサインイン

ユーザプロファイル カスタム属性を含むユーザプロファイルの取得と更新

SMS ベースの MFA有効にすると、サインアップ、パスワード紛失におけるフローの一環としてSMS を通じた確認コードによる多要素認証(MFA)を利用可能

Page 58: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

幅広い管理者シナリオ

ユーザプール内のユーザ管理

Email と電話番号の確認

AWS Lambda によるカスタマイズ

パスワードポリシーのセットアップ

ユーザプールの作成と管理

ユーザプール内の特定ユーザのリスト、検索、アクション実行

アカウントの有効化前に SMS を通じてユーザの email アドレスと電話番号を検証する設定(SMS経由)

ワークフローをカスタマイズするために AWS Lambda のファンクションを作成

最小文字数、大文字、特殊文字を含めるといったパスワード要件のコントロール

AWS アカウント内に複数のユーザプールを作成、構成、削除可能

属性の定義 必要な属性の選択とカスタムユーザ属性の定義

Page 59: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

セキュアなサインインを簡単に

Amazon Cognito

サードパーティのアイデンティティプロバイダによ

る認証

ゲストアクセス

User Pools

Sign in with

Facebook

Or

Username

Password

Sign In

Or

Start as a guest

Page 61: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

資料の配置場所

✤AWS クラウドサービス活用資料集

✤http://aws.amazon.com/jp/aws-jp-introduction/

✤AWS Solutions Architect ブログ

✤最新の情報、セミナー中のQ&A等が掲載されています

✤http://aws.typepad.com/sajp/

Page 62: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供

公式Twitter/FacebookAWSの最新情報をお届けします

@awscloud_jp

検索

最新技術情報、イベント情報、お役立ち情報、お得なキャンペーン情報などを日々更新しています!

もしくはhttp://on.fb.me/1vR8yWm

Page 63: Migrating Apps from Parse to AWS - d1.awsstatic.com · モバイルアプリ開発に利用可能なサービスが提供されている Amazon SNSなどParseが提供している機能相当のサービスを提供