2013-05-25 118 views
-2

我目前正在爲用戶提供一個博客供用戶撰寫。關於數據庫結構和性能需要的建議

我的問題涉及如何構建數據庫。

所以你們都知道博客是如何工作的。某些用戶發佈條目,系統將其放入數據庫中。現在的問題:

是更好地有成千上萬的數據庫,爲每個用戶和每個博客?例如用戶A有一個博客,其中的條目和照片,並有它自己的數據庫「UserABlog」。用戶B也使用數據庫「UserBBlog」。

或者是最好有一個針對是否有「項」和「照片」等鏈接通過外鍵的每個用戶表中的所有用戶提供一個單一的數據庫?例如用戶A和B得到了他們的博客,其作品和照片在各表「項」和「照片」保存到數據庫「博客」與外鍵鏈接到用戶A,B和C

回答

1

使用一個數據庫。

TL; DR:

  1. 博客不會帶來太多的數據
  2. 博客是簡單
  3. 您可以分區大表

相比具有對付真正的其他應用程序時間數據,工作流程和類似的東西博客只產生少量的數據。大多數數據庫都是爲了處理大量數據而建立的,並且會樂意處理數百或數千個博客。

博客通常不具備處理複雜的安全設置和訪問規則,所以你可以不用專門的數據庫,甚至創造一個很好的實現。

如果數據庫增長到很大,您仍然可以對錶進行分區。 http://www.mssqltips.com/sqlservertip/2888/how-to-partition-an-existing-sql-server-table/

1

我說去1個數據庫,這是所有相同的應用程序。如果您必須爲每個用戶管理1個數據庫,則更難以控制和修改表的模式。