database-design - 在 Data Vault 2.0 中,我们可以通过另一个链接连接一个链接和一个集线器吗?
问题描述
在数据保险库 2.0 中,我们可以通过另一个连接 aLINK
和 a吗?我们也可以连接 2 个链接,还是应该通过一个链接始终有 2 个集线器,仅此而已?HUB
LINK
我有一个观察链接,将相关字段 HUB 保存正在收集的信息连接到观察 HUB 中,其中包含这些字段的值:(忘记字段命名,只关注连接)
解决方案
不,不要这样做。如果你读过这本书,它有一个关于链接到链接结构的部分。只有四段。第一段告诉你它是什么,剩下的告诉你为什么不能这样做,它不会扩展,会损害性能,会花费你更多的维护成本,......并坚持链接的定义,链接是 2 个或多个业务实体(集线器)之间的关系,而不是业务实体和关系之间的关系。
您应该做的是规范化链接以获取您需要在一个表(链接)中定义关系的所有业务实体哈希。这样,您不必在查询中执行不必要的联接,并且如果将来链接发生更改,您也不必重新设计数据库(即:Link_Observation 更改它的粒度或不再使用并且可以删除)
这也是对 Unit-of-Work 的尊重
推荐阅读
- reactjs - 列上的 ReactTable setState 没有改变布局
- oop - 在 Delphi 中实例化不同类型的通用机制
- reactjs - React / MaterialUI - 同名导入导出
- excel - 添加表行时出现运行时错误 1004
- mongodb - MongoDB:无法添加用户 - 未授权 (CloudFoundry)
- configuration - REP-501 无法连接到指定的数据库
- vue.js - 使用外部 json 填充路由器
- javascript - 我可以在没有任何循环的情况下计算我的 JSON 属性吗?
- reactjs - react-dropzone 子图标在状态更改时不更改
- r - 将单元格颜色映射到 kableExtra 中的数据值以创建热图表