2017-10-20 11 views
0

読み込みと書き込みの操作を最小限に抑えながらFirestoreの小さなデータを処理する最適な方法は何ですか?Firestore文書のデータを分割する

私たちは、ユーザがアプリケーション上に見える店舗を評価したりレビューしたりできるようにするために、小さな問題文に取り組んでいます。

私が見るアプローチは、ストアの属性のセット(店舗名、店舗住所、集計格付け)を含むストア文書を作成し、各ユーザー格付けを文書として格付け/レビューのサブコレクションを作成することです。

/stores/{storeid}/rating/{rating_from_each_user} 

しかし、これにより、誰かがレビューをストアから読み込もうとするたびに、多くの読み取り操作が行われます。また、1MBの制限のために1つのドキュメントにすべてのレーティングを保持することはできません。最終的に、レーティングの数は増加し、これは拡張されません。

ベストプラクティスのために他のアプローチがある場合は、共有してください。

+0

読み取り回数に関して問題がないため、Firebaseデータベースを使用してください。 –

+0

返信ありがとうございます@AlexMamo。しかしFirebase Realtime Databaseの未来については懐疑的です.FirebaseチームはFirestoreをすべての新しいプロジェクトに使用するよう絶えず提案しています。 また、後で移行する予定がある場合、データを2つのインスタンスに保持することは困難になります。 これに関するFirestoreの実装に関する他のアイデアはありますか? –

+0

@KumarVivek私はFirebaseチームにいますが、間違っていると思います。あなたがリアルタイムデータベースを気に入っているなら、あなたは絶対にそれを使い続けるべきです/新しいアプリケーションを構築してください。それはどこにも行かず、クラウド・ファイアストアは代わりのものではなく、もう一つの選択肢です。 –

答えて

0

これを解決するには、Firebase Realtime Databaseをお勧めします。 Firebase公式ブログ、あなたはまだリアルタイムデータベースを使用する場合があります1つの理由から、このpostで述べたようにです:

我々は上で述べたように、クラウドFirestoreの価格モデルは、アプリケーションが小さな非常に多くのを実行していることを意味しクライアントあたりの1秒あたりの読み取りと書き込みは、リアルタイムデータベースの同様に実行するアプリケーションよりも大幅に高価になる可能性があります。

あなたは予算を知っています。この場合、どのオプションを選択するかはあなた次第です。

希望します。

関連する問題