我有一個MySQL數據庫的2場景,我不知道該選擇哪一個,我已經遇到了幾個表的同樣的困境。單個表格或單獨表格爲每個用戶保存相似的記錄? (性能??)
我正在製作一個只能由成員訪問的Web應用程序。每個成員都有自己的交易,費用,並說「列表」。記錄的標準在用戶中是相同的,但每個用戶可以有完全不同的記錄數量。
我的2個方案是我是否應該有一個表的交易,一個表的列表,一個表的費用......並在每個鏈接到特定用戶的主鍵的字段。或者...如果最好爲每個用戶分別創建交易表,費用表和列表表格(使用像「用戶」+交易或「用戶」+ exp這樣的組合字符串)。交易可以在1或2個用戶中使用,但費用和列表是完全獨立的。我將有一個主交易表來保存每筆交易的所有信息,但是有一個用戶交易表將主鍵鏈接到交易主鍵。
那麼,單獨的表格還是一張表格?如果有成千上萬的用戶擁有數百個交易/費用/列表......我只是不希望在很多交易或費用建立後查詢速度非常緩慢......沒有用戶永遠不需要查看任何內容其他用戶......嚴格只是他們的數據。
此外,我很熟悉數據庫是如何工作和存儲數據的,但我不是100%清楚。我只是希望它能夠快速工作,所以當用戶提交新的交易或費用時,我的另一個問題是(雖然它可能很愚蠢)......它是插入表的開始還是結束?或者它不相關...因爲在返回信息之前,查詢將以任何方式搜索表中的所有內容?
+1在大數據聲明 – ntziolis 2011-02-27 08:42:26
感謝您的輸入。我不確定實際上有多大。我猜100000個純文本記錄對於現代系統來說並不是那麼大?即使有很多領域。我非常感謝這個幫助,因爲我不介意以任何方式做到這一點,還有多個表中的一個。唯一的問題是如果我有一個問題(這將是一個令人難以置信的麻煩)後來切換。我唯一的其他問題是我需要保持記錄至少10年。因此刪除舊條目可能是一個問題。也許一個檔案表可以提供幫助。再次感謝! – William 2011-02-27 19:16:23
我剛來這裏看看是否合理,每個用戶都有一張表,以避免1)鎖定其他用戶2)防止「髒讀」(讀取部分提交的數據)。說,Facebook如何做到這一點? :D – loveNoHate 2014-02-07 23:52:31