2014-03-13 70 views
1

我不知道這個問題是否屬於這裏,如果需要請將其移動到適當的位置。每個用戶應該有一個單獨的獨立數據庫嗎?

我們正在開發一個使用PHP和MySQL的Web應用程序。該軟件是爲用戶提供大量預饋數據的軟件。例如,問題和答案列表就像知識庫。現在,每個註冊到系統中的用戶都可以自由地添加/更新/刪除這個知識庫,而不會影響其他用戶的數據。

現在我明白我們需要擁有此預饋入數據的主副本,並且必須將此數據的副本提供給用戶。

我想知道如何在不影響性能的情況下在系統中實現這一點。 我們需要爲每個用戶創建單獨的數據庫嗎?

任何指針?

謝謝!

+0

這對於SO有點OT。但無論如何,一個用戶的數據是否以任何方式與另一個用戶的數據交互? – Strawberry

+0

不,它不。事實上,沒有一個用戶甚至知道對方的存在。 –

+0

用戶可以創建和刪除表嗎?如果是的話,那麼我想我會與單獨的dbs一起去。如果他們不能,那麼我想我會保持在一分貝以下。 – Strawberry

回答

0

我發現了三種方法,他們將取決於您的域名要求。

  1. 您正在'種子'配置和基本數據,它對我來說確實是有意義的,以本地化每個用戶的設置。我想大多數的應用程序都遵循這個。
  2. 如果是域數據,當你說知識庫(我認爲它非常龐大)時,保存每個用戶的編輯並將主數據與用戶的個性化數據合併會更有意義。這是一個非常抽象的&我不知道它的實現,除非我真的看到數據建模,但這看起來是一種可行的方法!
  3. 如果您需要協作和內容,請將所有用戶的編輯分別保存在一個位置(每個集合或您希望的位置)。有了這個,我認爲,增加您的知識庫會更容易,儘管您可以在DBA的幫助下使用以前的方法來做到這一點!
+0

如果它不是一張表,但知識庫本身是一個完整的模式,我該怎麼辦? –

相關問題