Социальные сети и филиалы

Я нахожусь в процессе планирования базы данных для проекта социальной сети и наткнулся на этот URL, который является (грубым) обратным инженерным предположением схемы Facebook:

http://www.flickr.com/photos/ikhnaton2/533233247/

Что меня интересует, так это понятие «присоединения», и я пытаюсь полностью понять, как они работают, технически говоря. Где я несколько смущен, так это столбец NetworkID в таблицах FacebookGroups "," FacebookEvent "и" Affiliations "(NID в Affiliations). Как связаны эти сетевые присоединения?

В моем собственном проекте у меня есть простая таблица профиля:

CREATE TABLE [dbo].[Profiles](
    [profileid] [int] IDENTITY(1,1) NOT NULL,
    [userid] [uniqueidentifier] NOT NULL,
    [username] [varchar](255) COLLATE Latin1_General_CI_AI NOT NULL,
    [applicationname] [varchar](255) COLLATE Latin1_General_CI_AI NOT NULL,
    [isanonymous] [bit] NULL,
    [lastactivity] [datetime] NULL,
    [lastupdated] [datetime] NULL,
 CONSTRAINT [PK__Profiles__1DB06A4F] PRIMARY KEY CLUSTERED 
(
    [profileid] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY],
 CONSTRAINT [PKProfiles] UNIQUE NONCLUSTERED 
(
    [username] ASC,
    [applicationname] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]

Один профиль может иметь много филиалов. И одна принадлежность может иметь много профилей. И я хотел бы разработать его таким образом, чтобы отношения между филиалами рассказывали мне что-то о связанных профилях. На самом деле, основываясь на принадлежности, которую выбирают пользователи, я хотел бы знать, как сделать вывод об этом человеке.

Мой вопросКак я должен проектировать свои таблицы присоединения к сети и как они работают в соответствии с моими вышеуказанными требованиями? Грубая схема SQL будет оценена в вашем ответе.

Заранее спасибо...

Ответы на вопрос(1)

Ваш ответ на вопрос