Dinu Valentin, Nadkarni Prakash
Yale Center for Medical Informatics, New Haven, CT 06520-8009, USA.
Int J Med Inform. 2007 Nov-Dec;76(11-12):769-79. doi: 10.1016/j.ijmedinf.2006.09.023. Epub 2006 Nov 13.
To introduce the goals of EAV database modeling, to describe the situations where entity-attribute-value (EAV) modeling is a useful alternative to conventional relational methods of database modeling, and to describe the fine points of implementation in production systems.
We analyze the following circumstances: (1) data are sparse and have a large number of applicable attributes, but only a small fraction will apply to a given entity; (2) numerous classes of data need to be represented, each class has a limited number of attributes, but the number of instances of each class is very small. We also consider situations calling for a mixed approach where both conventional and EAV design are used for appropriate data classes.
In robust production systems, EAV-modeled databases trade a modest data sub-schema for a complex metadata sub-schema. The need to design the metadata effectively makes EAV design potentially more challenging than conventional design.
介绍实体-属性-值(EAV)数据库建模的目标,描述在哪些情况下EAV建模是传统关系型数据库建模方法的一种有用替代方案,并描述生产系统中实现的要点。
我们分析以下情况:(1)数据稀疏且具有大量适用属性,但只有一小部分属性适用于给定实体;(2)需要表示众多数据类,每个类具有有限数量的属性,但每个类的实例数量非常少。我们还考虑了需要混合方法的情况,即对适当的数据类同时使用传统设计和EAV设计。
在强大的生产系统中,采用EAV建模的数据库用一个复杂的元数据子模式换取一个适度的数据子模式。有效设计元数据的需求使得EAV设计可能比传统设计更具挑战性。