2017-08-29 3 views
0

ソーシャルマップサイトのように機能するウェブアプリを構築しています。ソーシャルマップサイトでは、友達がどこにチェックインしたのかを見ることができます。私はmongoDBのようなnoSQLデータベースでこれを行うことに頭を下ろそうとしています。mongoDBの友だちの関係

SQLデータベースでは、テーブル3のテーブルがあります。

1)ユーザーが、自分のチェックイン

2)利用者のペア(友人)

3)それは、比較的単純な問題だろう正しいデータを返すために、グループ

を持つユーザーのペア結合クエリ。

mongoDBでは、2つのコレクションがあると思います。

1)ユーザー。各ユーザーには、チェックインのサブ文書、友人のサブ文書、グループのサブ文書が参加します。

2)グループ。各ドキュメントには、そのグループ内のユーザーのサブ文書が含まれます。

私は両方のコレクションのユーザーのリストをコンパイルし、最初のコレクションからチェックインをクエリします。

これはかなり面倒なようですが、noSQLに多くの時間を費やしていないので、使い方を学びたいと思いますが、これはあまり役に立たないと思います。これはうまくいくのでしょうか?あるいは、私は別のタイプのデータベースを調べるべきですか?

答えて

1

チェックイン(場所?)を独自のコレクションとして追加します。次に、集約パイプラインを使用して結合を実行し、$lookup

関連する問題