博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
规则 - 注意昂贵的关系
阅读量:4039 次
发布时间:2019-05-24

本文共 559 字,大约阅读时间需要 1 分钟。

内容:注意数据模型中的关系。

场景:当设计数据模型、添加表/列、写查询语句或从长计议考虑实体之间的关系会如何影响效率和扩展性。

用法:当设计数据模型时,考虑数据库分离和未来可能的数据需求。

原因:实施之后在修复被破损数据模型的费用是设计过程中修复的100倍。

要点:超前考虑,仔细计划数据模型。设计范式时,考虑将来如何拆分数据库和应用系统可能的数据需求。

 

成本效益是衡量数据库关系的标尺。下列是数据库的常用范式:

1.第一范式:表应该代表了一种关系而且没有重复组。最重要的概念是创建键的能力。

2.第二范式:非键字段不能仅由组合键中的某一个键来描述。

3.第三范式:所有非键字段必须由键来描述。

4.第四范式:记录类型不应该包含两个或两个以上的多值事实。

5.第五范式:表中每个重要的连接依赖都由候选键说明。

6.第六范式:不存在非平凡的连接依赖。

满足前三个范式的数据库称为标准范式数据库。

 

关系型数据库满足的范式越高,规范程度越高,最终数据一致性的维护效果越好,当然操作过程中耗费的时间成本就越高。当SQL查询由于连接表的需求而性能不佳时,可以考虑如下操作:

1.调整查询语句

2.创建视图、物化视图、汇总表等对连接表进行预处理。

3.不在查询中进行表连接,而是在结果集中进行处理,这会导致内存消耗和更加难以扩展。

转载地址:http://ebvdi.baihongyu.com/

你可能感兴趣的文章
苹果Swift编程语言入门教程【中文版】
查看>>
捕鱼忍者(ninja fishing)之游戏指南+游戏攻略+游戏体验
查看>>
iphone开发基础之objective-c学习
查看>>
iphone开发之SDK研究(待续)
查看>>
计算机网络复习要点
查看>>
Variable property attributes or Modifiers in iOS
查看>>
NSNotificationCenter 用法总结
查看>>
C primer plus 基础总结(一)
查看>>
剑指offer算法题分析与整理(一)
查看>>
剑指offer算法题分析与整理(三)
查看>>
Ubuntu 13.10使用fcitx输入法
查看>>
pidgin-lwqq 安装
查看>>
mint/ubuntu安装搜狗输入法
查看>>
C++动态申请数组和参数传递问题
查看>>
opencv学习——在MFC中读取和显示图像
查看>>
retext出现Could not parse file contents, check if you have the necessary module installed解决方案
查看>>
Matlab与CUDA C的混合编程配置出现的问题及解决方案
查看>>
python一句话之利用文件对话框获取文件路径
查看>>
PaperDownloader——文献命名6起来
查看>>
如何将PaperDownloader下载的文献存放到任意位置
查看>>