見出し画像

FirestoreでのデータのコピーはCloud Functions経由する

2019/10/16

今日はCloud FunctionsでUser情報の作成、更新のトリガーを作成し別Collectionならコピーする実装を書いた。

Firestoreでよくやることですね。

データのコピーは必ずCloud Functionsで行う

データのコピーは必ずFirestoreのデータの更新のトリガーとして行いましょう。

その理由2つに下記の2つがあります。

1、不要なCollectionの書き込みを許可する必要がある
2、クライアントから複数のCollectionに対して一度にリクエストするのはUX的に良くない

1、不要なCollectionの書き込みを許可する必要がある

クライアントからデータを書き込めるということは、その書き込みのルールを許可する必要があります。

書き込みのルールを許可すると意図しないデータが書き込まれるリスクがあがります。

その分テストの工数が増えるということになります。

ですので、出来るだけ書き込みを許可するのを減らしておくことが重要だと思います。

なので、データのコピーに対してクライアント側でやると考慮しないといけないことが増えてしまうので出来るだけやらないようにしておくことがいいと思います。


2、クライアントから複数のCollectionに対して一度にリクエストするのはUX的に良くない


これは当たり前の話かもしれませんが、ユーザーが一度に複数の書き込みをやると当然ネットワーク通信量も増えますし、電池も消耗します。

ユーザーのためにも書き込みは一回だけに留めておくのがいいでしょう。


Firestoreって簡単に保存できるけど、読み取りのためのデータ構造とか考えはじめると非常に奥が深いです。だから楽しんですが。

明日もやるぞ💪

ここから先は

0字
月数本、サービス開発物語をお届けしています◎月2本以上読む場合は、月額でのマガジン購読がお得です!

shogo.yamadaサービス開発研究所

¥498 / 月 初月無料

shogo.yamadaがサービス開発についていろいろな考えや、アイデア、サービスを開発を継続させるための仕組み化の話をします。 現在SN…

投げ銭はいりません。それより無料でできる拡散をしてください!! 感想をツイートしていただけることが一番嬉しいです!!