Relational Design

Design by decomposition
Database Normalization

  • "Mega" relations + properties of the data
  • System decomposes based on properties
  • Final set of relations satisfies normal form
    • No anomalies, no lost information
  • Functional dependencies => BCNF


    function dependency.jpg
  • Multivalued Dependency => 4NF


    multivalued dependency.jpg
Relational Design.jpg

另外 Decomposition 必须满足 loseless join

loseless join.jpg

Functional Dependency

Functional Dependency 非常通用,随便举几例

  • Relational design by decomposition (BCNF)
  • 数据存储时压缩
  • 查询时优化

key:能决定一个 relation 所有元素的元素集合
closure:给定的元素集合所能决定的所有元素
由 closure 求得 key
考虑 relation 的所有集合(由集合大小从小到大考虑),利用 colsure 找到那些能决定 relation 所有元素的集合

BCNF

BCNF.jpg
BCNF Example1.jpg
BCNF Example2.jpg
BCNF Decomposition.jpg
BCNF Decomposition Example.jpg

Multivalued Dependency

Multivalued Dependency.jpg
Multivalued Dependency Example1.jpg
Multivalued Dependenc Example2.jpg

4NF Decomposition

4NF Decomposition.jpg
4NF Decomposition Example1.jpg
4NF Decomposition Example2.jpg

Denormalization

当然不是分解的越小越好,也要看情况。。。感觉这就是个经验问题。

Denormalization.jpg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • “我之所以觉得这一年对我重要,不是我完成了多少事,而是我深切的感受到内心开始丰富成熟了,不是麻木、僵化和世故;...
    王芃芃阅读 1,436评论 0 0
  • 最近在一个读书群里读尹健丽老师的《好马妈胜过好老师》中的文章《“不陪”才能培养好习惯》,《“不管”才是最好的“管”...
    红雲说口才阅读 3,240评论 0 2