際際滷

際際滷Share a Scribd company logo
岑っておきたい
Firebase の?んな貧泙砲弔い
2020/11/21
Android Bazaar and Conference Diverse 2020 Autumn
GDG Shikoku / Sansan, Inc.
Kenichi Tatsuhama
About me
?I宗?Kenichi Tatsuhama
? @tatsuhama50
? Sansan, Inc. Android developer
? GDG Shikoku Organizer
? uh舞?隨壓廖
Firebase Summit 2019 @ Madrid
Firebase Summit 2019 in Madrid に歌紗してきました。
https://buildersbox.corp-sansan.com/entry/2019/10/04/110000
Firebase Summit 2020 @ Online
枠?
10/27, 28 に_岸されました。
セッションe啝も貧がって
きているので勣チェック
Firebase ハンズオンを_岸
? 2019/04 梟?僥
? 2019/12 Google |奨オフィス
? 2020/02 ?寒
? 2020/03 u┘ンライン
GDG Shikoku を Check !!
Firebase とは
? Google が戻工する、れたアプリを_kし、ユ`ザ`ベ`ス
を?し、б罎?めるためのツ`ル。
? インフラBに?g函ることなくビジネスをб羯し、ユ`
ザ`にとっての旋宴來に鹿嶄できます。
岑っておきたいFirebase の弼んな貧泙砲弔い
岑っておきたいFirebase の弼んな貧泙砲弔い
岑っておきたいFirebase の弼んな貧泙砲弔い
噫
? JSTQB というテスト室g宀Y鯉を
隔ってます。
? そんなわけで、
Firebase の廠順・謄好硲
云セッションのゴ`ル
? Firebase の光N貧泙鰆る
? 貧泙魍えるとどうなるのか岑る─
? 貧泙鮖惘椶垢?隈を岑る
☆2020定歪の{砲任后筝になっている辛嬬來があります。
蒙にドキュメントにかれていない咤
‐歌深/聞?楚と崙泯Firestore の箭
? https://firebase.google.com/docs/firestore/quotas
巷塀ドキュメントを
勣チェック。
プロジェクト方
? プロジェクトとは、1アカウントが隔てる Firebase の恷貧了の
エンティティ
? プロジェクトには、iOS アプリ、Android アプリ、Web アプリ
や、それぞれの云桑、ステ`ジングなどのアプリも根む並がで
きます。
プロジェクト
プロジェクト方
https://firebase.google.com/docs/projects/learn-more?hl=ja
プロジェクト方
貧泙厘き貧げをリクエストすれば弖紗辛嬬
プロジェクト方
? 貨
? 音勣なプロジェクトは茅しよう麗尖茅は30?瘁
? 駅勣ならば、貧淹査揺蠻襪鬚靴茲
イベント方
イベント方
? 600周僕ってみた
? g?rエラ`にはならない
? W决僕佚されるし、?蛍の極挑が僕っていないイベントは委燐音嬬
? Logcat にもエラ`は竃ていない
イベント方
? Firebase dashboard 貧
? 容Xイベント┘廛螢札奪硲x3
? ユ`ザ協xイベント x500
イベント方
? BigQuery 貧のイベントのユニ`ク方を竃してみた
○ BigQuery 貧にはhされてる と房ったら、600 もなかった。。。
イベント方
? 採がhされているのか
???
プリセット
○ 。
イベント方
? event_name = ^error ̄ is 採
○ 。
イベントプロパティに
firebase_error : 8
イベント方
? BigQuery 貧では
エラ`がhされ
ていた
? ┘ライアント貧
で貧泙盆_してる
かは軸r登僅でき
ない。 
https://firebase.google.com/docs/an
alytics/errors?hl=ja
イベント方
? 貨
? ある殻業イベントを来めてプロパティで曝eする
? n?しても笋錣蕕覆
? 箭 open_xxx_screen, open_yyy_screen という2つのeのイベント
? open_screen ( screenName : xxx)
? open_screen ( screenName : yyy)
のように screenName というプロパティで曝eする
? 階^してたら、どうすることもできない´殖隆{烹
? 恷の栽、プロジェクト壅恬撹。殖┘クブル
ユ`ザプロパティ
https://firebase.google.com/docs/analytics/android/properties?hl=ja
箭isPremium : true
ユ`ザプロパティ
? 100 周原けてみた
? g?rエラ`にはならない
? Logcat にもエラ`は竃ていない
ユ`ザプロパティ
? 階^蛍はエラ`ではなく、
oされる
? BigQuery を?てみた
? プリセット x 3
? カスタム x 25
しかhされてない
? さきほどの firebase_error
はhされてなかった
Rり卦し勣殆
REPEATED
´
ユ`ザプロパティ
? 貨
? 圀らない
? n?しても笋錣蕕覆
? 湖
? イベント方階^はエラ`としてhされるのに、ユ`ザプロパティ方の階^
はエラ`じゃないんですねw
? a?
? イベントg?rのユ`ザプロパティであり、恷仟のユ`ザプロパティではな
い
? 歌孚ではなく、イベントごとにそのときのユ`ザプロパティのコピ`が隠隔
されている
ホスティング
ホスティング
ホスティング
? 貧泯10G まで┐里呂今
? 尅る玲いは 1G
? 1G を階えてデプロイできた
? アップグレ`ドの少御が竃る
ホスティング
? 貧浤^でアクセスしてみたY惚
ホスティング
? 貨
? n?する
? ?きなリソ`スファイルは、Storage に塘崔
? 方指蛍の堕sも根めた否楚なので、g| 100 MB 殻業を貧泙箸澆討
いた?が措い
? 堕s茅ツ`ルがあるみたい
? https://gist.github.com/mbleigh/5be2e807746cdd9549d0c33260871d21
ストレ`ジ
ストレ`ジ
? 貧泯5GB
? Extension 吉
の否楚も紗麻
される
? でもデプロイ
できたw
? アップグレ`
ドを容してく
る
ストレ`ジ
? 貨
? n?する
? 鮫颪栽、リサイズして隠贋すれば否楚のsになる
? Firebase Extensions の Resize Images が宴旋
? https://firebase.google.com/products/extensions/storage-resize-images
FCM のスケジュ`リング
FCM のスケジュ`リング
? Firebase Cloud Messaging┘廛奪轡緲岑の協豚僕佚スケ
ジュ`ルは 10 周まで
FCM のスケジュ`リング
? 貨
? iOS / Android で蛍けてしまうと方を?うので、??をBえる並ができ
るならBえて、方をsする
? 揖じ OS でも悶Y井 / 嗤井など}方のアプリがある栽も揖
? ?Zごとに1つの協xをMしてしまうのがy泣´
Firebase In-App Messaging はロ`カライズC嬬を隔っている
? ☆n?してもえない
Remote Config
Remote Config
? サ`バ貧に篳を協x
? クライアントの尅る玲いをリリ`スなしに筝できる
? 畠ユ`ザに揖じ、鮓遒蟲韻討襪世韻任呂覆、護栽や奉來を峺
協してなる、鮓遒蟲韻討襪海箸發任る
? ユ`スケ`ス
? A/B テスト
? メンテナンスモ`ドのフラグ
? パ`センテ`ジロ`ルアウト
C嬬の粁A議巷_
Remote Config
? fetch g侯
? Firebase 貧の協x、鰌iみに?くg侯
? デフォルトでは 12h
? 筝できるが、極挑ごとの 1h 參坪の柵び竃し指方崙泙ある
★ DB のように、厚仟l業が?く軸r來が?い栽には音鬚
? でも、リアルタイムで参イ気擦?隈もある
┯仟l業が詰い栽に泙襭
Remote Config
? 厚仟をリアルタイムで参イ垢襭└贈
? https://firebase.google.com/docs/remote-config/propagate-
updates-realtime
FCM との栽わせ室で、
?r議に fetch g侯を 0 にする
Remote Config
? 麿にも´
ホスティングを聞って json をデプロイするという?隈もアリ
かも岑れない
☆徽し、畠ユ`ザ揖じ、砲覆
or クライアントサイドで岱方で json の歌孚枠を尅り蛍け
Firestore
? いわゆる DB
? NoSQL でスキ`マレス
? リアルタイム厚仟が咾
? Document / Collection / Data という夛を隔つ
Firestore のo
? https://firebase.google.com/docs/firestore/quotas
? DAU が方認だと、oでは\?しきれないかも
Firestore Document へのきzみ
たったの 1指/s。
○ Bluk も 500周 なのは富??い´
Firestore Document へのきzみ
? カウンタ`のアンチパタ`ン
? 誘後の仝いいね々方をドキュメントのフィ`
ルドに隔ち、Transaction 坪で、鰌iみzん
でインクリメントして隠贋
○1昼gに1指しか厚仟できない
●箭
Firestore Document へのきzみ
? 
? カウンタをサブコレクションに蛍柊するsharding
? ランダムに shared をxんでインクリメント
? iみ函りrは shard 方の栽を竃す
=======
shard
Firestore Document へのきzみ
蛍柊カウンタの崙淙瀧
? Shard 方が富ない
? 払。υ捏?でパフォ`マンス喪晒
? Shard 方が謹い
? iみ函りrのパフォ`マンス喪晒
? iみ函りコストM?の紗
Firestore Document へのきzみ
蛍柊カウンタの崙淙瀧
? Shard 方が富ない
? 払。υ捏?でパフォ`マンス喪晒
? Shard 方が謹い
? iみ函りrのパフォ`マンス喪晒
? iみ函りコストM?の紗
Firebase Extensions の Distributed Counter を聞えば、サクッとgFできる
https://firebase.google.com/products/extensions/firestore-counter
Firestore Document へのきzみ
? array のアンチパタ`ン
? 箭誘後へのコメント
○1昼gに1指しか
厚仟できない
Firestore Document へのきzみ
? 貨
? Document 坪のコレクション─戰廛蹈僖謄に隠隔する
厚仟1指/s
厚仟500指/s
Firestore まわり
? 貧泙鰔瞰Rしたデ`タOが駅勣
? 僕楚や歌孚指方をpらすデ`タ夛
? デ`タの隔ち?など、RDB にはないノウハウが駅勣になる
? n?しても笋錣蕕覆
噫CAP 協尖
? ブリュワ`の協尖とも柵ばれ、蛍柊コンピュ`タシステム┘
ラウドシステムのマシンgの秤麪}uにvする協尖。
CAP のうち、3つを揖rに困燭垢海箸呂任ない。
? C?來 (Consistency)
? A鎖?來 (Availability)
? P嵯峩歪熔 (Partition-tolerance)
? Firebase では、A┸?來, P┠峩鰐縉藤 がサポ`トされ
ているので、C?來は要fする駅勣がある
https://ja.wikipedia.org/wiki/CAP%E5%AE%9A%E7%90%86
まとめ
? Firebase には、さまざまな貧泙贋壓する
? n?すればひき貧がるモノもあるし、そうでないものもある
? 勣周によっては、貧泙?象えたOが駅勣
? 貧泙班?くつきあう駅勣がある
? 栽によっては、貧泙鰺仔討靴討睚垢┐修
? 吭翌とo創/嗤創の廠順もザル
? 來鋲h\?かな織乾瓮鵐淵汽ぁ_Jできたのでします。
? 恷の栽、プロジェクトを恬り岷し
Let?s enjoy Firebase !!
オンライン兆缶
SansanEight

More Related Content

岑っておきたいFirebase の弼んな貧泙砲弔い