【问题标题】:Classifieds website Database design分类广告网站数据库设计
【发布时间】:2014-10-06 12:23:57
【问题描述】:

我正在开发一个网站,人们可以在其中发布与动物相关的广告。有:

1- 动物销售和收养广告

2- 动物交配广告

我很难想象分类广告部分的数据库结构应该是什么。到目前为止,这是我想出的:

用户可以发布广告。每个广告都有一个广告类别(Mating/Sale)和一个广告类型(Offering something/Requesting something)。

我为动物创建了一个单独的表,其中将包含所有动物数据,并为品种创建了一个单独的表。我这样做是为了更容易按动物或品种进行搜索。

ERD 仍处于非常初级的阶段,但我想知道这在性能和存储方面是否有效。

提前感谢您! :)

【问题讨论】:

  • Animal Mating Ads 可视化 ...不,你不...

标签: database-design relational-database database-schema


【解决方案1】:

我的建议是创建第 3 范式架构,然后分析您的应用。很难猜测性能。索引和查询优化等其他因素将产生很大影响。确保为所有 WHERE 子句使用索引。

我也会考虑按日期分区。你没有说你将如何处理历史数据。现在考虑在将广告移出存档以进行报告之前,您将保留多长时间还为时过早。您不希望您的性能随着时间的推移而减慢,因为表的大小已经增加。

既然您已经发布了架构,我建议您从 Ad 表中删除breed_id。那里没有关系。一只动物可以拥有一个品种。

【讨论】: