2016-03-05 19 views
1

我正在研究一個網站,這個網站將作爲一個榮耀的待辦事項列表供最終用戶使用。 SQL是我做這件事所需要的最少經驗的地方。無視現實中的實際情況,這實際上會得到一個龐大的用戶基礎,我怎麼能設計出這樣一個場景,我有成千上萬的人在桌子上添加數十個自己的物品?如何設計我的表以允許大量的行?

以下是我目前計劃的 的佈局物品表:
ItemID |用戶名|內容|子內容|父| |層次結構|天|注意|警報|截止

所以,每個用戶創建的項目都包含在該表中,使用類似查詢「SELECT *其中userid = $ thisUser」,然後放置在頁面上,並使用從其它信息處理正確那一排。

有了這種佈局,數十萬甚至上百萬的條目會成爲嚴重的性能問題嗎?如果您有任何您認爲會有所幫助的建議或資源,我將不勝感激。謝謝。

回答

1

如果您將列user_id索引,那麼幾十萬或幾百萬應該不是什麼大問題。如果我們談到更多的行,也許幾十億或幾億,你應該想辦法根據用戶均勻分配這些項目。但是,行數只是影響性能的一個方面。數據的模式化和查詢數據庫的代碼可能會產生更大的影響。

1

我相信你需要重新考慮你的數據庫佈局。個人用戶很少會使用相同的內容。我想你應該爲每個用戶都有一個表,那麼它將是UerID | ItemID | Content | Subcontent .... 這使您可以在用戶退出時維護數據庫。

相關問題