「難しそうで自分には縁遠い話・・・」という方も多いのではないでしょうか。実は、簡単なスマートフォンアプリであれば、誰でも作ることができるんです!実際に某プログラミング言語の参考書では、スマートフォンアプリを作りながらプログラミング言語を学習する参考書もあります。開発や運用に必要なすべての機能をクラウドサービスとして提供しているサービスもあります。本記事では、Googleが提供するスマートフォンアプリやWebアプリケーションにおけるバックエンドサービスである「Firebase」にフォーカスし、Firebaseの概要や主な機能、料金体系などを解説いたします。Firebaseを一言で表すと、Googleが提供するスマートフォンアプリやWebアプリケーションにおけるバックエンドサービスを提供するクラウドサービスです。スマートフォンアプリやWebアプリケーション開発・運用においては、必要な環境として、データを格納するデータベースや公開用サーバーやアプリの機能として、Google、Twitter、FacebookなどのSNSアカウントでのログイン機能やメッセージ(プッシュ通知)を送受信できる機能も必要となります。リリース後の運用として、アプリの使用状況とユーザーエンゲージメントなどの分析やアプリのエラーやクラッシュ状況の確認も必要となります。Firebaseは、前述のスマートフォンアプリやWebアプリケーション開発・運用に必要な機能(バックエンドサービス)をすべて備えたクラウドサービスです。Firebaseを利用することで、開発スピードの向上と適切な運用によりコスト削減をすることができます。Platform)に統合されました。クラウドサービスとしては、MBaasもしくはBaasの位置づけとなり、スマートフォンアプリやWebアプリのバックエンド処理向けのサービスにカテゴリされます。Serviceの略で、スマートフォン向けWebアプリケーションのバックエンドサービスを提供するサービスです。Serviceの略となっており、MBaasは、Baasに””M””(Mobile)を足しただけで基本的に意味は同じです。前述の通り、Google、Twitter、FacebookなどのSNSアカウントとの連携機能やメッセージ(プッシュ通知)を送受信できる機能などを持っており、サーバーレスであるため、サーバーの設計・運用が不要であり、開発や企画などに注力できることやセキュリティ面が保障されています。このように、スマートフォンアプリやWebアプリケーションの開発スピードの向上と適切な運用によりコスト削減できるという特徴があります。主な機能(できること)Firebaseは、データベースをはじめ、SNSアカウントとの連携機能など様々な機能を提供しています。主な機能は、以下の8つです。Firestoreです。Databaseよりも高速でスケールアウトにも対応しています。すべてのアプリケーション間でリアルタイムなデータ同期が行われ、デバイスがオフラインのときは、データキャッシュでのオフラインのデータ読み書きが行われ、デバイスがオンラインになった際に、変更をすべて同期することができます。Firestoreに関する最新情報は公式ドキュメントを参照ください。Databaseです。Firestoreと同様のNoSQLデータベースです。Firestoreを利用する方が良いです。Databaseに関する最新情報は公式ドキュメントを参照ください。Webサイトや静的/動的コンテンツをデプロイすることができる、高速な通信速度と安全性の高いホスティングサービスです。SSDストレージと大容量のデジタルコンテンツをインターネット上で大量配信するためのネットワークであるグローバル(CDN:コンテンツデリバリーネットワーク)が基盤となっており、コンテンツを高速で配信することができるほか、組み込みのSSLが提供されるため、独自ドメインも設定することができます。Hostingに関する最新情報は公式ドキュメントを参照ください。Authenticationです。OAuth2.0やOpenIDConnectなどの業界標準に準拠したユーザー認証機能を用いて、Google、Twitter、FacebookなどのSNSアカウントなどとの認証機能をアプリケーションに実装することができます。様々な認証方法に対応したアプリケーション開発におけるコストを削減することができます。Authenticationに関する最新情報は公式ドキュメントを参照ください。Messagingです。メッセージ(プッシュ通知)を送受信できる機能で、特定のデバイスやアカウントなどセグメントを絞り込み、メッセージを送信することができます。メッセージは、エンドユーザーのデバイスに通知を表示させる通知メッセージと、クライアントアプリが処理するためのメッセージを送信するデータメッセージの2種類のメッセージを送信することができます。Messagingに関する最新情報は公式ドキュメントを参照ください。Firebaseです。クラウドストレージサービスで、Firebaseを利用するスマートフォンアプリ、Webアプリなどのためのデータ格納領域(ストレージ)を提供しています。Storageと同様に高性能・高セキュリティなクラウドストレージとなっています。権限設定によっては、アプリケーションでアップロード・加工したファイルをユーザー間で共有することもできます。Firebaseに関する最新情報は公式ドキュメントを参照ください。Firebaseです。AnalyticsのFirebaseバージョンとなります。アプリケーションの利用状況やユーザーエンゲージメントなどを分析することができ、アプリケーション内のユーザーアクションを最大で500種類のアクション(イベント)で分析することができます。Firebaseに関する最新情報は公式ドキュメントを参照ください。Crashlyticsです。AndroidとiOS、Flutter、Unity向けのクラッシュ分析サービスで、リアルタイムでのアプリケーションのエラーやクラッシュを把握することができます。クラッシュに対して重要度により重みづけ・グループ化や重要度の高いクラッシュをリアルタイムに通知することができるため、トラブルシューティングや緊急性の高いクラッシュに柔軟に対応することができます。Crashlyticsに関する最新情報は公式ドキュメントを参照ください。料金体系Firebaseには、Sparkプラン(無料)とBlazeプラン(従量課金制)の2つのプランがあります。それぞれの詳細は以下の通りです。Firebaseへの保存GBが5GBまで、ダウンロードは、1GB/日までなど、利用に制限があるプランです。Firebaseへの保存GBなどによって、課金されるプランです。想定するユーザー数やデータ容量から料金計算ツールを用いて、費用算出することもできます。料金プランに関する最新情報は公式ドキュメントを参照ください。https://firebase.google.com/pricing/?hl=jaまとめGoogleが提供するスマートフォンアプリやWebアプリケーションにおけるバックエンドサービスである「Firebase」にフォーカスし、Firebaseの概要や主な機能、料金体系などは理解できましたでしょうか。「利用状況やユーザーエンゲージメントなどの分析を行いたい」といった方は、Firebaseの導入・利用を検討してはいかがでしょうか。株式会社KUIXではGCPを用いたシステムの開発やコンサルティングを行っています。みなさまは、”プライベートクラウド”という言葉をご存じでしょうか。