【Flutter】Firestoreのデータ、読み取り、書き込み、削除の使用状況を把握する

どーも、ぐるたか@guru_takaです。

Flutterでアプリ開発中。データベースはFirestoreを使用しています。そこで、Firestoreの読み取り頻度が気になったので調査しました。

その結果をまとめていきます。

Firebaseの初期設定は完了していること前提で進めていきます。まだの方は以下の記事を参考にしてみてください!

検証方法

リスト一覧にテキストフィールドを追加・削除・編集できる機能でFirestoreの使用状況を試してみます!

リスト一覧のデータはFirestoreから取得します。型はStreamで、StreamBuilderでビルド。簡単にまとめると、Firestoreのデータが変わったら、自動でリスト一覧が更新される感じです。

クライアント1つ(スマホ1台)で試します。検証方法は3つ!

  • 新しいデータをFirestoreに3つ追加
  • Firestoreのデータを3つ削除
  • 新しいデータを追加。その後にデータをアップデート

最初の読み取り、書き込み、削除の数は以下の通りです。

読み取り 227
書き込み 82
削除 86

新しいデータをFirestoreに3つ追加

検証GIFです。

結果はこちら!

読み取り 230(+3)
書き込み 85(+3)
削除 86
結果
データをFirestoerに3回登録しているので、書き込み数が+3されました。

書き込み数も+3されているのは、Firestoreでデータが更新され、Flutter側から読み取りに行っているの気がします。

ドキュメント数が複数(今回であれば、”テスト”達)あっても、読み取りは1度で済んでいたのも確認できました。

Firestoreのデータを3つ削除

検証GIFです。

結果はこちら!

 

読み取り 230
書き込み 85
削除 89(+3)
結果
Firestoerのデータを3回削除しているので、削除数が+3されました。

ビックリしたのは、読み取り数が+3されず、何も変わっていない点です!

Firestore側まで読み取らず、そのまま削除されるんですかね…?意外でした。

運用面で余計な読み取りがないので、ありがたい話です!

新しいデータをFirebaseに1つ追加。その後、データをアップデート

検証GIFです。

結果はこちら!

読み取り 232(+2)
書き込み 87(+2)
削除 89
結果
Firestoerのデータを1回登録+1回更新しているので、書き込み数は+2されました。

それに合わせて、読み取り数も+2されています。

更新する度に、読み取り数が+1されるのが確認できました!

まとめ

  • Firestoreのデータ登録 → 書き込みと読み取りの数:+1
  • Firestoreのデータ削除 → 削除の数:+1
  • Firestoreのデータ更新 → 書き込みと読み取りの数:+1

コメントを残す