我正在創建一個類似Facebook的社交網站。 對於我的「牆」,我有許多不同類型的信息,如狀態,消息,用戶喜歡/不喜歡的頁面,用戶更新了他的個人資料,...如何設計像Facebook一樣的複雜牆的數據庫
我想知道如何設計我的DB與牆相關的表格)在獲取牆上物品時儘可能高效(就速度而言)。
在此先感謝!
編輯:我有兩個想法:
- 有一大桌有足夠的列來處理所有的可能性(USER_A,USER_A,消息,網頁,is_like,is_dislike,...)。它會很快,但會有很多'NULL'值,並且會佔用很多DB空間
- 有一個只有三列(id,user_a,user_b)的'wall_item'表和每種牆項目的表消息,喜歡,狀態......)。它將被正常化,但會花費更多時間,因爲需要獲取所有信息的左連接數量。
你能說我爲什麼把我的問題投下來嗎?我不知道它有什麼問題...讓我知道,我會很樂意解決它;) –