论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
数据库
›
向量数据库
›
数据库原理:数据库的反规范化技能
数据库原理:数据库的反规范化技能
诗林
论坛元老
|
2025-5-17 08:53:38
|
显示全部楼层
|
阅读模式
楼主
主题
1559
|
帖子
1559
|
积分
4677
(1)什么是反规范化技能
数据库计划者希望捐躯部门规范化来提供性能,这种从规范化计划的回退方法称之为反规范化技能。
(2)为什么要使用反规范化技能
当数据库对数据模子举行规范化处理后,会发现经过规范化处理后得模子在举行查询操作时结果并不理想。由于经过规范化处理过得数据模子形成一系列的小表,每个小表数据量较小,举行查询操作时往往需要应用程序对这些表举行动态连接操作,这就需要在差别的表中举行多次IO操作。表的连接操尴尬刁难于较少的、小容量的表也许不会产生较大的影响,但是对于数据量十分庞大的数据库,这种多表的连接操作在时间上是很难让用户担当的,此时提高效率的最好方法就是使这些小表归并在一起,这就是数据的反规范化处理。
(3)反规范化技能的优缺点
反规范化技能主要是为了提拔查询性能而举行的一系列处理,包罗对数据表举行连接,合理规划数据的存放,以及合理的引入数据冗余。其优点在于低沉连接操作的需求,低沉外码和索引的数量,还大概淘汰表的数量;带来的题目是数据的重复存储,浪费了磁盘空间,大概出现数据的完整性题目,为了保障数据的同等性,增长了数据维护的复杂性,会低沉修改速度。
(4)反规范化技能
增长冗余列:在多个表中保留相同的列,通过增长数据冗余淘汰或制止查询时的连接操作。
增长派生列:在表中增长可以由本表或别的表中数据计算天生的列,淘汰查询时的连接操作并制止计算或使用集合函数。
重新组表:如果许多用户需要检察两个表连接出来的结果数据,则把这两个表重新组成一个表来淘汰连接而提高性能。
程度分割表:根据一列或多列数据的值,把数据放到多个独立的表中,主要用于表数据规模很大、表中数据相对独立或数据需要存放到多个介质上时使用。
垂直分割表:对表举行分割,将主键与部门列放到一个表中,主键与别的列放到另一个表中,在查询时淘汰 I/O 次数。
示例-1:增长冗余列
规范化:
反规范化:
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
诗林
论坛元老
这个人很懒什么都没写!
楼主热帖
Java软件架构师-25个关注点
Kafka(一)利用Docker Compose安装单 ...
服务网格主动故障检测及流量切换方案 ...
Windows安装mamba全流程(全网最稳定最 ...
Android技能整理:一文秒懂Flutter跨平 ...
【Linux】Ubuntu20.04解决网卡、显卡驱 ...
Adobe2024全家桶win及Mac系统安装包下 ...
高通相机camx-chi 架构详解
CentOS7安装内网穿透实现长途推送镜像 ...
24年首批!上海通管通报违规app涉及欧莱 ...
标签云
渠道
国产数据库
集成商
AI
运维
CIO
存储
服务器
快速回复
返回顶部
返回列表