2010-08-01 45 views
0

我正在使用WPF前端和PostgreSQL數據庫創建應用程序。數據包括患者地址和供應商地址。列出的每個郵寄地址平均約有3個聯繫人。我估計每個數據庫10,000至15,000條聯繫人記錄。是否將數據拆分爲單獨的PostgreSQL表

在設計數據庫結構時,我發現不是將郵寄地址存儲在單個「聯繫人」表中,而是可以有一個表存儲名稱和其他單個數據,第二個表存儲地址。然後,我可以在表格之間創建關係,以便將地址與聯繫人進行匹配。

我有一個很好的主意,我可以整齊地組織情況,如更改單個聯繫人的地址,其他聯繫人的地址停留在同一地址。

問題是:它值得嗎?我能期望在存儲大小方面節省很多嗎?這會影響adversley查詢的速度嗎?如果我使用的是PostgreSQL以外的東西呢?

+1

要回答您的問題,首先列出您的所有用例,並考慮它們如何與每個數據模型配合使用。 – 2010-08-01 20:18:02

回答

0

除非您認爲大量的用戶將共享地址,並且他們經常會發生變化,否則我不認爲需要規範化地址部分。在我工作過的各個地方看到用戶表,有時候是這樣,有時候並非如此 - 似乎從來沒有真正以這種或那種方式造成可怕的麻煩。

在性能方面,只有10-15k條記錄和適當的索引,我無法想象你會注意到現代硬件上的差異太大(儘管技術上單獨的表應該更慢)。

0

我同意約書亞。一旦設置正確(規範化),將來管理應用程序的任何更改都非常容易。

相關問題