l-commerce / module-eav
Eav For Artisan.
0.2.0
2018-11-16 16:52 UTC
Requires
- php: >=7.0.0
- illuminate/database: ^5.5
- league/csv: ^9.0
Requires (Dev)
- fzaninotto/faker: ~1.4
- mockery/mockery: ~1.0
This package is auto-updated.
Last update: 2024-09-18 03:12:17 UTC
README
工作进度
实体-属性-值模型(EAV)是一种数据模型,以空间高效的方式编码实体,其中可用于描述实体的属性(属性、参数)的数量可能非常大,但实际应用于特定实体的属性数量相对较小。
文档
何时使用
-
让我们考虑一种情况,其中可以使用许多不同的属性来描述一个实体,但只有少数属性实际适用于每个实体。一个选项是创建一个表格,其中每一列代表一个属性;这对于具有固定属性数量的实体是合适的,其中所有或大多数属性都有大部分对象的值。然而,在我们的情况下,我们会得到大量列空的记录,因为属性可能未知或不适用。为了解决上述问题,您可以使用 EAV(实体、属性、值)模型。
-
具有可能随时间变化的松散模式。描述实体的属性表不受特定列数的限制,这意味着在需要引入新属性时不需要重新设计模式。随着数据库的发展,属性数量可以垂直增长,而无需结构更改。
EAV 的局限性
- 在 EAV 模型中,实体数据更加碎片化,因此选择整个实体记录需要多次表连接。请检查这里