千家信息网

数据库的读写分离、垂直拆分、水平拆分、分库分表是什么

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,本篇内容主要讲解"数据库的读写分离、垂直拆分、水平拆分、分库分表是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"数据库的读写分离、垂直拆分、水平拆分、
千家信息网最后更新 2026年11月01日数据库的读写分离、垂直拆分、水平拆分、分库分表是什么

本篇内容主要讲解"数据库的读写分离、垂直拆分、水平拆分、分库分表是什么",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"数据库的读写分离、垂直拆分、水平拆分、分库分表是什么"吧!

1. 前言

相信你经常被 读写分离、垂直拆分、水平拆分、分库分表 这几个名词搞得很懵逼。

2. 读写分离

这个相对比较好理解一些,就是将数据库分为主从库,一个主库(Master)用于写数据,多个从库(Slaver)进行轮询读取数据的过程,主从库之间通过某种通讯机制进行数据的同步,是一种常见的数据库架构。下面这张图就展示了 "一主二从" 的结构:

2.1 为什么要读写分离

大多数互联网数据操作往往都是读多写少,随着数据的增长,数据库的"读"会首先成为瓶颈。如果我们希望能线性地提升数据库的读性能和写性能,就需要让读写尽可能的不相互影响,各自为政。在使用读写分离之前我们应该考虑使用缓存能不能解决问题。然后再考虑对数据库按照 "读" 和 "写" 进行分组。读写分离意味着将一体的结构的进行分散,在数据量大、高并发的情景中要考虑以下这些问题

  1. 如何保证 Master 的高可用,故障转移,熔断限流等。

  2. 读写操作的区分规则,代码层面如何处理好读命令和写命令,尽量无感知无业务入侵。

  3. 数据一致性的容忍度。虽然是数据同步,但是由于网络的不确定性这仍然是一个不可忽视的问题。

3. 分库

数据库垂直拆分、数据库水平拆分 统称 分库。是指按照特定的条条件和维度,将同一个数据库中的数据拆分到多个数据库(主机)上面以达到分散单库(主机)负载的效果。这样我们变相地降低了数据集的大小,以空间换时间来提升性能。

3.1 数据库垂直拆分

数据库垂直拆分 指的是按照业务对数据库中的表进行分组,同组的放到一个新的数据库(逻辑上,并非实例)中。需要从实际业务出发将大业务分割成小业务。比如商城的整个业务中的 用户相关表,订单相关表,物流相关表 各自独立分类形成 用户系统数据库,订单系统数据库,物流系统数据库 如下图:

这样带来了一些好处:(a)业务清晰,职责单一 (b)易维护,易扩展 (c)数据服务化 。同时也有一些负面的作用:(a)提高了整个应用的复杂度,而且会形成跨库事务 (b)引发 "木桶效应",任何一个短板有可能影响整个系统 (c)部分表关系不能 join 只能通过服务相互调用来维系。甚至由于网络问题引发数据不一致。

在需要进行分库的情况下,通常可优先考虑垂直拆分。

3.2 数据库水平拆分

在数据库垂直拆分后遇到单机数据库性能瓶颈之后,就可以考虑数据库水平拆分了。之所以先垂直拆分才水平拆分,是因为垂直拆分后数据业务清晰而且单一,更加方便指定水平的标准。比如我们对商城业务垂直拆分后的 用户系统 进行水平拆分就比对整个商城业务进行水平拆分好找维度,我们可以根据用户注册时间的区间、用户的区域或者用户 ID 的范围、 hash 等条件,然后关联相关表的记录将数据进行拆分,如果放在整个商城业务上你是以用户为准还是以订单为准都不太好考虑。

我们按照每100万为区间对用户系统水平拆分如下:

这种拆分的好处在于:(a)单个库的容量可控 (b)单挑记录保证了数据完整性 (c)数据关系可以通过 join 维持 (d) 避免了跨库事务 ;缺点同样存在:(a)拆分规则对编码有一定的影响 (b)不同业务的分区交互需要统筹设计

4. 分表

分表也分为 数据表垂直拆分 和 数据表水平拆分 。

4.1 数据表垂直拆分

数据表垂直拆分就是纵向地把表中的列分成多个表,把表从"宽"变"窄"。一般遵循以下几个点进行拆分:

  • 冷热分离,把常用的列放在一个表,不常用的放在一个表。

  • 大字段列独立存放

  • 关联关系的列紧密的放在一起

我们把用户表中常用的和不常用的而且大字段分离成两张表:

4.2 数据表的水平拆分

表的水平拆分感觉跟库的水平拆分思想上都是一样的,只不过粒度不同。表结构维持不变。也就是说拆分后数据集的并集等于拆分前的数据集。理解了 3.2 章节 之后这个就没有什么可说的了。

到此,相信大家对"数据库的读写分离、垂直拆分、水平拆分、分库分表是什么"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

数据 数据库 水平 业务 用户 分库 分表 系统 数据表 商城 常用 性能 问题 多个 结构 订单 影响 不同 一致 主从 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广州淘业互联网络科技 广州大一互联网络科技有限公司 互联网科技公司税收优惠 互联网科技垄断 奇士达互联网科技 西安互联网科技公司 伴你行互联网科技有限公司 科技互联网创业计划书 隆华科技工业互联网 厦门千工互联网科技有限公司 中国互联网公司排名锤子科技 中科明德北京互联网科技 广州有谷有贝互联网科技有限公司 山东大美朱楼互联网科技有限公司 济南小医互联网科技有限公司招聘 北京天晋互联网科技有限公司 科技信息时代互联网发展 青岛易易互联网科技 平安好医生打造互联网科技医疗 优雇互联网科技有限公司 金融科技 互联网金融 互联网科技咨询 无锡溥仪互联网科技有限公司 上海科技产业互联网平台 互联网科技年终奖 山东大美朱楼互联网科技有限公司 互联网科技手机排行榜 互联网公司属于科技吗 科技和互联网行业的特点 互联网企业和网络科技有限公司
0