スマホアプリ開発に必須?BaaSとは!?

callmichael
スマートフォンアプリ開発においてリソースを有効活用するためにはBaaS, MBaaSの導入がとても効果的となっています。BaaSとはなにか、BaaSの基本についてご説明していきます。スマホアプリをよりよいものにするために、押さえておきましょう。

まずはMBaaSについて

MBaaS(「エムバース」と読みます)はMobile Backend as a Serviceの略で,去年の中頃から米国で使われるようになった用語です。一般的にBaaSと呼ばれているサービスは,IaaS(Infrastructure as a Service)やPaaS(Platform as a Service)と比較すると,プログラミングや構築,運用の手間がかからないものを指す場合が多く,MBaaSはモバイル版BaaSですので,iOS, Android, JavaScriptなどのモバイルアプリの開発環境でそのまま使えるSDKが提供されています。いろいろなサーバ機能がすべて,SDKのAPI経由で利用できるので,アプリを開発するだけで,リリースすることができます。ユーザ管理,データ管理,プッシュなどの機能がひと通り揃っていて,そのサービスを使うだけで大体のことができてしまう汎用的なMBaaSは,米国のParse社,Kinvey社,StackMob社,日本のKii株式会社などが提供しています。
http://gihyo.jp/dev/serial/01/mbaas/0002

BaaSとは

BaaSでは、スマートフォン向けのモバイルサービスでよく利用される機能を、簡単な設定で平易にアプリと連携して利用できるように準備されています。大抵の場合、設定のみ、APIを呼び出すだけで、サーバ側のコードを書かずとも、必要なサービス構築を済ませられます。

1. ユーザー登録、IDの再発行、ユーザー情報の管理
2. メール通知、プッシュ通知
3. GPSを活用した、位置情報サービスとの連携
4. TwitterやFacebookなどソーシャルネットワークサービスとの連携
5. データやコンテンツの保存/管理機能
安藤幸央のランダウン(62):スマホアプリ開発に超絶便利なBaaSとは、MEAPとは – @IT

どんな時に使える?

ユーザーの登録を受け付け、ログイン認証を提供したい
運営側からお知らせなどのコンテンツを管理画面から配信したい
ユーザーのデータやファイルをサーバー上に保管したい
一部のデータやファイルはユーザー間でシェアできるようにしたい

こういったアプリに共通で必要なサーバー機能をクラウドサービスとして提供するのが、appiariesをはじめとしたBaaS(Backend as a Service)です。
BaaSを利用することでアプリの開発者と運営者は、同じようなサーバーの準備・開発を繰り返すことなく、アプリそのものにリソースを集中させることができるようになります。
BaaSとは | appiaries (アピアリーズ)

BaaSの利用には、開発、運用の面で、大きく2つのメリットがあります。

1)スピード開発
バックエンド側の開発、管理作業を行う必要がなくなるため、フロントエンド側の開発にリソースを集中させ、開発スピードを上げることができます。
2)コスト削減
スマホアプリの開発・運用には、冗長化したWebサーバーやDBサーバー、負荷分散等を管理するサーバーなどが必要になります。IaaSや自社サーバーなどを利用する場合は、 利用者が減ってきた際にこれらのサーバーの管理コストが問題になります。BaaSであれば、複数企業・アカウントがサーバーを共有しているため、管理コストを低く抑えられます。
また、サーバー整備に必要な人員コストの圧縮、スピーディな開発による工数短縮などのコストメリットもあります。
BaaS(スマホアプリ開発環境)とは|ソリューションプラットフォームのスパイラル|パイプドビッツ

BaaSの代表例

わざわざサーバ側のアプリを開発することなく、Parseのプッシュ配信の仕組みなどが利用でき、iOS、Android、Webアプリ(HTML5+JavaScript)から平易にAPIが利用できます。専用のSDKか、URLに必要な情報をパラメータ記述するREST APIで利用できます。
安藤幸央のランダウン(62):スマホアプリ開発に超絶便利なBaaSとは、MEAPとは – @IT

料金は「Basic」プランと「Pro」プランがあり、Basicプランでは月に100万アクセスまで無料です。それを超えた分は1000アクセスにつき、7セント(現在だと、約5円程度)、1Gbytesのファイルストレージが利用できます。Proプランは、それよりも大量のAPIサービス、ストレージが利用でき、それでも月に199ドルです。最初の1カ月は無料です。
安藤幸央のランダウン(62):スマホアプリ開発に超絶便利なBaaSとは、MEAPとは – @IT

KinveyはGPSロケーションベースのサービスや、プッシュ配信、ユーザー管理の他に、アプリのバージョニング、アクセス解析などにも優れたBaaSです。

iOSやAndroid、JavaScript、HTML5から利用できるほか、後述のPhoneGapやTitanium Mobileからも利用できます。

Kinveyは他のBaaSに比べ、ストレージの料金体系が柔軟に決まり、利用するエンドユーザー数とストレージの量で、細かく変化します。
安藤幸央のランダウン(62):スマホアプリ開発に超絶便利なBaaSとは、MEAPとは – @IT

QuickBlox

QuickBloxはAmazon S3をストレージとして活用/連携できるBaaSです。サンプルやチュートリアルが豊富です。

「Free」プランから、「Small」「Medium」「Large」「Enterprise」プランと細かく規模が分かれています。Enterpriseプラン以外は、APIアクセス量と、ストレージの量の違いで料金設定が決まります。

★3つなど、レイティングの仕組みと、チャットのモジュールが準備されているところが特徴です。
安藤幸央のランダウン(62):スマホアプリ開発に超絶便利なBaaSとは、MEAPとは – @IT

日本のBaaSプレイヤー

Parse.comとよく似たサービス内容と価格体系を取っている本格的な国産BaaSです。 Parse.comと差別化をはかる独自機能も提供していて、例えばマネタイズの問題を抱えるアプリ向けにアドネットワークとの連携機能を標準で備えています。 また中国のグレートファイヤーウォール内でもサービスを提供し、独特なアプリ市場を形成している中国へのアプリ進出を支援していることも特徴的です。
注目BaaSの機能を学んで、簡単モバイルアプリを制作してみよう – 鈴木理恵子 | type IT Academy

日本初のBaaSとして注目を集めました。他サービスと比べまだまだ機能が少ない印象ですが、日本のパイオニアとしてこれからの動向に期待しています。
注目BaaSの機能を学んで、簡単モバイルアプリを制作してみよう – 鈴木理恵子 | type IT Academy

SaaSとBaaSの違い

SaaSは、Software as a Serviceの略で、「サービス」という観点からソフトウェアを観て、ユーザは必要なものだけ金を払って使わせてもらう、という概念になります。
ソフトウェア機能は多岐に渡りますので、不要なものまで含まれて請求されても嬉しくはありません。
ユーザにとって必要なサービスをユーザが選択して、それの利用代を支払うための考えです。

BaaSは、Backend as a Serviceの略で、モバイルアプリケーションに必要なサーバ機能をクラウド上でAPIなどとして
提供することで、必要なものをモバイル端末側から簡単に利用できる、というものです。
クラウドサービスについてです。BaasとSaasの違いってなんでしょうか??… – Yahoo!知恵袋

SaaSは、ひとことで言えばネットワークを介して必要に応じて利用できるソフトウェア、ということができますが、従来からあったASPと比べて何が違うかと言えば、技術の向上によって進化した点だといえます。
SaaSとは? : SaaS ビジネスパーク®

ソフトウェアをユーザー側に導入するのではなく、ベンダ(プロバイダ)側で稼働し、ソフトウェアの機能をユーザーがネットワーク経由で活用する形態を指します。
5分で絶対に分かるSaaS (1/6) – ITmedia エンタープライズ

ここでよく聞かれる質問に、SaaSと「ASP」(Application Service Provider)のモデルとどこが違うのかというものがあります。ベンダ側ではさまざまな説明をしているようですが、あまり本質的な相違はないというのが正直なところでしょう。
5分で絶対に分かるSaaS (2/6) – ITmedia エンタープライズ

SaaSは企業も採用している

無印良品

良品計画は、ネットストアやスマホアプリのデータ分析でSaaS型データ管理システム「Treasure Data Service」を採用した。トレジャーデータが3月13日に発表した。ネットショッピングサイト「無印良品ネットストア」とスマホアプリ「MUJI passport」を対象とした分析に2013年12月から活用している。
良品計画、ECサイトとスマホアプリのデータをSaaS型で分析 – ZDNet Japan

Treasure Data Serviceは、大容量の時系列データを収集、保管、集計できるデータ管理サービス。ブラウザ内で容易にデータを可視化できる機能やアドホックなクエリの実行速度をより高速化するオプションサービスも用意されている。
良品計画、ECサイトとスマホアプリのデータをSaaS型で分析 – ZDNet Japan

その他のアプリに関するまとめ

https://matome.naver.jp/odai/2140378785704608701
2014年06月26日