看板 Database 關於我們 聯絡資訊
※ 引述《chilam22 (chilam)》之銘言: : 我目前在研究一般資料庫設計的問題, : 我猜有兩種方式, : (1) 一個統一的table,記錄每個人的文章, : 當要列出某人的文章時,再來search這個table 以資料庫正規化設計而言,這個方法是最好的。 不只是可以搜尋指定的人的文章,也可以方便做統計數據。 只要索引設計的夠好,搜尋時間不會比 (2) 來的慢。 就算是有 1,000,000 筆資料,也可以控制檢索時間在 1 秒以內。 當然還要搭配 CPU 和夠強的 I/O 能力,這樣就算資料很多也不用怕。 : (2) 每個人一個table,記錄自己的文章, : 但同時有一個統一的table,方便來做search 如果你有 1000 個 user,那不是要有 1000 個 table? 而且你註冊使用者時就建,還是要等到發文章時才建? 又或者,如果註冊的使用者只貼一兩篇文章,卻要用到一個 table, 我個人認為是很浪費空間的事,而且在程式設計上又很麻煩(動到 transaction 和多 table 的寫入,locking 的問題和後續統計處理的問題等等。 : 我個人是覺得(2)比較好, : 因為當要列出某個人的文章時就不太需要search的時間, : 而壞處是會浪費硬碟空間和寫資料時要同時寫到多個table, : 但我想以空間換取search時間應該是值得的。 : 請問大家覺得哪種比較好? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.70.255.96
javck:我也贊同回文大大的說法,建資料方便,建表格實體難阿! 04/15 20:30