15.5 What is denormalization? Explain the pros and cons.

逆规范化Denormalization是一种通过添加冗余数据的数据库优化技术,可以帮助我们减少关系数据库中耗时的交Join。在一般的规范化的数据库中,我们将数据存在不同的表中是为了减少冗余数据,所以我们会尝试着每条数据在数据库中只有一份。

比如说,在一个规范化的数据库中,我们有Courses表和Teachers表,每个Courses表的一项都会保存teacherID,但是没有teacherName,当我们想要返回Course和teacherName时,我们需要联合两个表。当老师需要改名时,我们只需要修改Teachers表,这是这样做的好处,但是,当表很大的时候,我们联合两表就会很耗时。

逆规范化这里就有用武之地了,我们容忍部分冗余数据和更新表所需多余的一些工作,以此换来快速高效的检索和较少的交操作。很多大公司同时使用规范化和拟规范化数据库。

拟规范的优点:

- 检索数据更加快速由于交减少了。

- 检索可能更加简单了,因为不用联合多个表。

拟规范的缺点:

- 更新和插入操作更费事了。

- 更新和插入的脚本更加难写了。

- 数据可能不一致了。

- 由于存在数据冗余,更占空间了。

CareerCup All in One 题目汇总

转载于:https://www.cnblogs.com/grandyang/p/5362007.html

[CareerCup] 15.5 Denormalization 逆规范化相关推荐

  1. MYSQL学习笔记06:列属性[NULL,default,comment],主键,自增长,唯一键,数据库设计规范[范式(1NF,2NF,3NF),逆规范化],表关系[1V1,1VN,NVN]

    列属性 列属性又称为字段属性. 在mysql中一共有6个属性:null,默认值,列描述,主键,唯一键和自增长. NULL属性 NULL属性代表字段为空. 如果对应的值为yes表示该字段允许为null, ...

  2. mysql 逆范式化_mysql优化(三) 逆规范化与反三范式

    数据库设计时要满足规范化这个道理大家都非常清楚,甚至有数据库的三范式, 好吧, 这有点让我想起了机器人的三定律.但是否数据的规范化程度越高越好呢?这还是由实际需求来决定. 因为规范化越高,那么产生的关 ...

  3. MySQL主外键以及基本查询

    主键 主键:primary key,主要的键.一张表中只能有一个字段可以使用对应的键,用来唯一的约束该字段里面的数据,不能重复:这种称之为主键.一张表中只能有最多一个主键. 增加主键 SQL操作中有多 ...

  4. mysql数据库对象管理_MySQL管理与优化(15):优化数据库对象

    优化数据库对象 优化表的数据类型: 可通过PROCEDURE_ANALYZE()对当前应用的表进行分析,语法: SELECT * FROM tb_name PROCEDURE ANALYSE() 范例 ...

  5. Think in Java第四版 读书笔记9第15章 泛型

    Think in Java第四版 读书笔记9第15章 泛型 泛型:适用于很多很多的类型 与其他语言相比 Java的泛型可能有许多局限 但是它还是有很多优点的. 本章介绍java泛型的局限和优势以及ja ...

  6. 逆序输出三位数python_逆的部首|逆的拼音|逆的组词|逆的意思 - 查字典

    逆 nì 拼音: nì 注音: ㄋㄧˋ 部首笔划:3 总笔划:9 繁体字:逆 汉字结构:半包围结构 简体部首:辶 造字法:形声 笔顺:捺撇横折竖撇捺折捺 逆的意思.基本信息 五笔86:UBTP 五笔9 ...

  7. 机器学习(西瓜书)15、规则学习

    15.1 基本概念 规则:机器学习中通常指语义明确.能描述数据分布所隐含的客观规律或领域概念.可写成"若-,则-"形式的逻辑规则. 规则学习(rule leaning):是从训练数 ...

  8. mysql数据库建站教程视频_Mysql数据库零基础到精通视频教程(共6天)

    php教程 当前位置:主页 > php教程 > Mysql数据库零基础到精通视频教程(共6天) Mysql数据库零基础到精通视频教程(共6天) 教程大小:886MB   发布时间:2016 ...

  9. 5天玩转mysql视频教程_六天带你玩转MySQL

    教程列表: 01数据库课程介绍 02数据库(基础知识) 03数据库(关系型数据库) 04数据库(关系型数据库关键字说明) 05数据库(SQL) 06数据库(mysql数据库) 07数据库(mysql服 ...

最新文章

  1. Finding Similar Items 文本相似度计算的算法——机器学习、词向量空间cosine、NLTK、diff、Levenshtein距离...
  2. php怎么把文字改成黑色,微信如何调成黑色模式?
  3. 如何应对货期延迟(转自索菲外贸笔记)
  4. spring框架所有包解释
  5. MySQL分组函数的介绍
  6. 如何快速学习使用mybatis以及总结
  7. SQL Server中常用全局变量介绍
  8. 无心剑中译迪米特利·马丁《我是谁》
  9. python 知乎接口_ZhihuVAPI 是一个可以让你以一种优雅的形式调用知乎数据的 Python 包....
  10. ADS(Advanced Design system)仿真测试元器件在不同功率下的输入阻抗
  11. 米勒-拉宾质数判断证明
  12. 2016 Multi-University Training Contest 2 1012 La Vie en rose (暴力)
  13. 【CEP 扩展开发二】Hello World
  14. 数据库开源备份工具phpmybackup
  15. 拆解「千言数据集:文本相似度」竞赛第一背后的故事
  16. Linux(Debian)下安装glmark2(-es2)
  17. 理论+实验·MySQL数据库管理
  18. 百度聚合时,label文字隐藏问题
  19. 为什么WIFI信号较差的时候,网速会比较慢
  20. 软路由刷ESIR LEAN OPENWRT X86-64 固件

热门文章

  1. python2.7可以同时连接两个数据库吗
  2. 从php到python的第一天
  3. 【408预推免复习】计算机组成原理之计算机的发展及应用
  4. 【深度学习】多层感知器高级使用
  5. 【Java Web前端开发】BootStrap入门
  6. 洛谷题单的Python版题解(有需要的小伙伴可以来看看哦~!)
  7. 【Kali渗透全方位实战】子域名的概念与探测(DNSenum工具和Sublist3r脚本的使用)
  8. 【最小费用最大流】Going Home
  9. python可以修图吗_会照片处理的不只是ps,还有Python!
  10. 产品网络推广方案浅谈网站的相关性对优化的影响!