标签: ontology

这个键值的数据库模式有名称吗?

我们处理来自客户的常规数据馈送,该客户刚刚将其数据库从一种看起来很熟悉的表单(每个实体一行,每个属性一列)重构为一个我似乎不熟悉的表单(每个实体每个属性一行):

之前:每个属性一列

ID   Ht_cm   wt_kg   Age_yr  ... 
1      190      82     43    ...
2      170      60     22    ...
3      205      90     51    ...
Run Code Online (Sandbox Code Playgroud)

之后:所有属性的一列

ID    Metric   Value
 1     Ht_cm     190
 1     Wt_kg     82
 1     Age_yr    43
 1      ...
 2     Ht_cm     170
 2     Wt_kg     60
 2     Age_yr    22
 2     ...
 3     Ht_cm     205
 3     Wt_kg     90
 3     Age_yr    51
 3     ...
Run Code Online (Sandbox Code Playgroud)

这个数据库结构有名字吗?有哪些相对优势?旧方法似乎更容易对特定属性(非空、非负等)设置有效性约束,并且更容易计算平均值。但是我可以看到在不重构数据库的情况下添加新属性可能会更容易。这是构建数据的标准/首选方式吗?

schema database-design ontology eav

70
推荐指数
5
解决办法
1万
查看次数

EAV 结构用外行术语解释

我在网上阅读了几篇解释 EAV 结构如何工作的文章,但对它们有不同的解释。一些文章提到它是数据模型元数据(或模式)的表示。其他文章将 EAV 结构描述为本体。我将本体描述为概念模型(显示世界中“事物”之间的关系),或者是数据库中实际数据的类实例。

有人能解释一下这个模型中的每个表在外行术语中代表什么以及如何使用这个 EAV 数据模型吗?

我不认为这是数据模型的表示,因为 [Object] 没有直接链接到 [Attribute]。您需要一个实际值来关联这两者。因此,如果 A 是数据模型中表 O 的字段/列,则无需强制您可以将 [Attribute] A 与 [Object] O 一起使用。现在我确实看到了 RI 表。我认为这意味着“参照完整性”。但是如果我们谈论本体,那么我们可以称之为关系身份。在谈论本体三元组时,我只是指关系或谓词——意思是主语/谓语/宾语。请注意,连接不与属性连接,这将更多地表示与表列的关系数据模型 FK/PK 关系,因此我希望它连接到属性,而不是对象。它与[对象]有关。

如果可以,请对此有所了解。也许我想太多了。如果您有其他有用的 EAV 模型,请告诉我。

参考:http : //eav.codeplex.com

在此处输入图片说明

database-design ontology eav

6
推荐指数
1
解决办法
2725
查看次数

标签 统计

database-design ×2

eav ×2

ontology ×2

schema ×1