私はfirebaseテーブルに数千のエントリーを持つアプリを持っています。 誰かがこのテーブルに接続しているので、これらのアイテムを数えて合計する必要があります。ファイヤーベースデータを効率的にまとめよう
-itemlist
|
--1
|-x:2
--2
|-x:4
などとなる。ユーザーはいつでも接続できます(前にこの表を見たことがないことを意味します)。また、別のユーザーがいつでも値を変更したり、値を追加することができます。
ValueEventListener
を「itemlist」に追加しようとすると、新しいデータがなくても1000のエントリを持つ新しいデータベースに接続すると、リスナーはこれらの1000のエントリをすべて呼び出すと機能します。
私はonChildlistenerで試してみましたが、これは最初に余分なアイテムごとに追加されたChildItemを呼び出します。 これは時々2分以上かかります。
データベース全体を一度取得し、それを計算してから変更をリッスンする方法はありますか?
ローカルにデータが必要なので、すべてをロードしようとしています。変更を追跡するだけなので、誰かがアプリを起動するとすぐにそれはOKです。初めての場合はパフォーマンス上の大きな問題です。 – alltooconfusingthereforesleep