Google+ サークルなどのデータベース構造 (mysql) がどのようなものであるか、ユーザー定義のサークルをどのように追跡しているかに興味があります。ユーザーが特定の他のユーザーとコンテンツを共有することを選択できるアプリに、同様のものを実装したいと思います。
基本的に、ユーザーは自分が定義したグループに友人を配置して、友人が見ることができるコンテンツをフィルタリングできます。今のところ、フレンド システムのかなり単純な実装があります。これは、ユーザー テーブルとフレンド テーブルを含む標準の正規化されたデータベースです。
「グループ」またはサークルのデータベース構造をどのように設定するかについて、誰かが光を当てることができますか? Friends テーブルに追加のフィールドを追加することを考えました。これは、groups テーブルへの外部キーになります。ただし、特にユーザーがグループを定義し、任意の数のグループに友人を配置できる場合は特に、これがすぐに扱いにくくなることがわかります。
これをすばやく実装する方法や、Google のサーバーの計算能力を必要としない方法はありますか?