前提・実現したいこと
現在、独学で以下の画像のような「①Map情報(道順)、②写真、③本文」を投稿できるSNSアプリを開発しております。
その際のFirestoreによるデータベース構造を考えており、どういった手法や形を取るべきなのかわからず質問させて頂きたいです。
お詳しい方おられましたら、ご回答いただけますと幸いです。
試したこと
①posts、②users、③routesコレクションを以下の画像1のように構成しようと考えていました。
その後、いろいろと検索する中で、画像2の載っている記事を見つけました。
今まで、NoSQLは非正規化でなるべくフラットにするべきだと考えていたのですが、
画像2のようなサブコレクションでどんどん深くしていく形を参考にするべきでしょうか?
ご意見だけでも頂けますと幸いです。
また、個人的にはフラットの方が他のNoSQLを使用する際にも応用できるのではないかと思っており、
フラットな形を作る場合の問題点や改善方法が御座いましたらご指摘頂けませんでしょうか?
その他不明点等、何でも申し付けください。
何卒よろしくお願いいたします。
post_0:Firestoreが自動でふるID
-author-name:user_0のname
-author-ref:user_0へのpath(users/user_0)
-route-name:route_0のname
-route-ref:route_0へのpath(routes/route_0)
-route-location:ルートを構成する点1つ1つの位置情報
画像1
画像2
あなたの回答
tips
プレビュー