JDBC基础——数据库水平切分,垂直切分

1、数据库水平切分,垂直切分
考察点:数据库
参考回答:垂直拆分就是要把表按模块划分到不同数据库表中(当然原则还是不破坏第三范式),这种 拆分在大型网站的演变过程中是很常见的。当一个网站还在很小的时候,只有小量的人来开发和 维护,各模块和表都在一起,当网站不断丰富和壮大的时候,也会变成多个子系统来支撑,这时 就有按模块和功能把表划分出来的需求。其实,相对于垂直切分更进一步的是服务化改造,说得 简单就是要把原来强耦合的系统拆分成多个弱耦合的服务,通过服务间的调用来满足业务需求, 因此表拆出来后要通过服务的形式暴露出去,而不是直接调用不同模块的表,淘宝在架构不断演 变过程,最重要的一环就是服务化改造,把用户、交易、店铺、宝贝这些核心的概念抽取成独立 的服务,也非常有利于进行局部的优化和治理,保障核心模块的稳定性。 垂直拆分:单表大数据量依然存在性能瓶颈 水平拆分,上面谈到垂直切分只是把表按模块划分到不同数据库,但没有解决单表大数据量 的问题,而水平切分就是要把一个表按照某种规则把数据划分到不同表或数据库里。例如像计费 系统,通过按时间来划分表就比较合适,因为系统都是处理某一时间段的数据。而像 SaaS 应用, 通过按用户维度来划分数据比较合适,因为用户与用户之间的隔离的,一般不存在处理多个用户 数据的情况,简单的按 user_id 范围来水平切分。 通俗理解:水平拆分行,行数据拆分到不同表中, 垂直拆分列,表数据拆分到不同表中。
理解:

垂直切分

关键词:按模块划分 服务化改造
垂直切分只是把表按模块划分到不同数据库,但没有解决单表大数据量 的问题

水平切分

关键词:水平拆分行

总结:

通俗理解:水平拆分行,行数据拆分到不同表中, 垂直拆分列,表数据拆分到不同表中。都是为了整理数据库,减小数据量。

题目来自:牛客网

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值