当前位置: 首页 > article >正文

【软考】反规范化技术

论反规范化技术
反规范化有这几种技术,增加冗余列,增加派生列,重组表和分割表。其中冗余列是指同一个字段在另外的表中存储一份,减少连表操作。增加派生列是基于另外一个列或者多个列,计算得到一个新的列,可用减少操作,重新组表是指将两个表合并成一个表,这样可用减少连表操作。分割表分为水平分割和垂直分割两种方式,其中水平分割,是表结构不变,表的数据横向划分到不同的表中。垂直分割是指原表的主键分别和部分列组成几个表,这样可用减少IO次数。

反规范化的优点:
1、提高了查询速度
2、减少表的数量
3、减少外键和索引的数量
4、简化查询语句,降低连接操作

反规范化的缺点:
1、数据冗余
2、数据一致性维护问题
3、磁盘空间浪费
4、增加额外开销,这是因为需要处理数据一致性操作
5、可维护性下降,增加了数据库设计的复杂性,可能导致难以理解和维护数据模型。

如何解决数据不一致的问题:
1、批处理维护:定期运行批处理作业或存储过程对数据库进行修改,实时性要求不高
2、应用逻辑,同一事务中对所有涉及的表进行增删改查,缺点是容易遗漏,不易于维护
3、触发器,对数据的任何修改立刻触发对数据库某些列的相应修改,实时性好,也易于维护

在这里插入图片描述

在这里插入图片描述


http://www.kler.cn/a/379995.html

相关文章:

  • 《TCP/IP网络编程》学习笔记 | Chapter 1:理解网络编程和套接字
  • 【Nginx】编译安装(Centos)
  • mac-泛洪
  • Prim算法与Dijstra算法
  • vue系列==vue组件
  • LINUX_Ubuntu终端安装tools的命令
  • 代码训练营 day55|卡码网98
  • Jenkins找不到maven构建项目
  • H7-TOOL的CAN/CANFD助手增加帧发送成功标识支持, 继续加强完善功能细节
  • 【GESP】C++一级真题练习(202303)luogu-B3835,每月天数
  • 基于 Transformer 的语言模型
  • 【BUG分析】clickhouse表final成功,但存在数据未合并
  • 十四届蓝桥杯STEMA考试Python真题试卷第二套第一题
  • 贝尔不等式的验证
  • Es 基础操作 增删改查
  • 一些常用的react hooks以及各自的作用
  • 【漏洞复现】泛微OA E-Office group_xml.php SQL注入漏洞
  • Vue项目与IE浏览器的兼容性分析(Vue|ElementUI)
  • Web大学生网页作业成品——和平精英网页设计与实现(HTML+CSS+JS)(4个页面)
  • MATLAB——矩阵操作
  • CSS基础学习篇——选择器
  • ThreeJS创建一个3D物体的基本流程
  • Github 2024-11-01 开源项目月报 Top19
  • 信息学科平台开发:Spring Boot核心技巧与实践
  • 银行金融知识竞赛活动策划方案
  • 回归预测 | MATLAB实现基于RF-Adaboost随机森林结合AdaBoost多输入单输出回归预测