规范化或不规范化

SB.*_*SB. 5 database database-normalization

我正在设计一个具有不同类型地址的系统.例如,人员地址,酒店地址,机场地址,办公室地址.

我参与讨论,我认为由于地址不同(不同实体酒店,机场等),地址应存储在单独的表格中.我认为这会提高性能.

还有另一种意见是将所有地址放在同一个表中.

我正在使用PostgreSQL,我正在查看超过1000万条记录.

您认为更好的设计是什么?

我期待着你的意见.

此致,Shardul.

小智 4

我建议将地址保留在同一个表中,并有一个类型字段来指示它是什么类型的地址。

如果您有正确的索引和更新的统计信息,1000 万条记录并不是一个难以管理的数量。

通过将它们放在同一个表中,可以确保可伸缩性。如果添加其他类型的地址会怎样?对于另一个添加的表来说,代码的更改将是巨大的,但如果您在现有表中只是有另一个地址类型,则代码的更改将是最小的。