我在设计一个必须跟踪数千种不同产品类型(例如汽车、扬声器、婴儿车等)和存储属性(例如转弯半径、最大输出、颜色、等)为每个。
我的理解是,如果人们要搜索所有蓝色婴儿车,我最好为每种类型的产品都有一个表(除了一个“通用”产品表,它存储所有产品共有的东西,如名称和品牌)。如果不是出于对搜索速度的担忧,我会热衷于使用 EAV 类型的模型,但根据我所阅读的内容,我对此感到气馁。
这似乎是一个常见问题,但我还没有看到如何处理我正在尝试做的事情的好答案。我知道有很多网站在跟踪此类数据,但我发现很难想象他们有数千个不同的表格,以便为每种产品类型提供一个“详细信息”表格。是否有可能他们都在使用 EAV,而反对 EAV 的人虽然在技术上是正确的,但却夸大了使用这种模型的性能损失?或者他们只是使用一个包含所有属性的列的大“产品”表,而不担心所有的空值?
任何帮助将不胜感激。我只知道有一种常见的方法可以做到这一点,我真的很希望有人让我参与其中!:)