存储产品属性
Storing Product Properties
我正在创建珠宝产品目录应用程序,我需要存储每个产品的属性,例如 material、饰面、产品类型等。
我得出结论,每个 属性 都需要一个模型,主要是因为像 material 和饰面这样的东西可能有价格和重量以及其他与之相关的东西。
这两个选项中哪一个是存储数据和可扩展性最有效的方式
- 创建模型
PropertyMap
,将 属性 类型和 ID 映射到产品 ID。
- 创建几个其他模型,例如 ProductMaterial、ProductFinish 等,这些模型将 属性 制成产品
所有数据都需要可搜索和可过滤。该数据库可能会索引大约 10K 种产品。
也欢迎使用其他更智能的方式来存储此数据!
根据经验,要充分利用您的数据库工具,最好根据典型的 SQL 约定规范化您的数据。这意味着一堆彼此具有一对一关系的字段应该被收集到同一个 table 中。这样您就可以通过简单高效的查询来获取所有信息(并且经常需要同时使用它们)。
如果您不得不从其他组织收集它们,您和数据库最终都将不得不做更多的工作。当您努力维护和扩展它时,无论是在硬件上还是在您的大脑中,它的扩展性都会很差。
我正在创建珠宝产品目录应用程序,我需要存储每个产品的属性,例如 material、饰面、产品类型等。
我得出结论,每个 属性 都需要一个模型,主要是因为像 material 和饰面这样的东西可能有价格和重量以及其他与之相关的东西。
这两个选项中哪一个是存储数据和可扩展性最有效的方式
- 创建模型
PropertyMap
,将 属性 类型和 ID 映射到产品 ID。 - 创建几个其他模型,例如 ProductMaterial、ProductFinish 等,这些模型将 属性 制成产品
所有数据都需要可搜索和可过滤。该数据库可能会索引大约 10K 种产品。
也欢迎使用其他更智能的方式来存储此数据!
根据经验,要充分利用您的数据库工具,最好根据典型的 SQL 约定规范化您的数据。这意味着一堆彼此具有一对一关系的字段应该被收集到同一个 table 中。这样您就可以通过简单高效的查询来获取所有信息(并且经常需要同时使用它们)。
如果您不得不从其他组织收集它们,您和数据库最终都将不得不做更多的工作。当您努力维护和扩展它时,无论是在硬件上还是在您的大脑中,它的扩展性都会很差。