分库分表简介

分库分表:

对于大型互联网项目,数据量级可能不是我们能想到的,每日新增数据量过千万是常有的事儿,想靠单台MySQL服务器是不现实的。你项羽在牛B,也顶不住四个队友挂机啊!!项羽:???


随着业务数据量和网站QPS日益增高,对数据库压力也越来越大,单机版数据库很快会到达存储和并发瓶颈,就需要做数据库性能方面的优化,分库分表采取的是分而治之的策略,分库目的是减轻单台MySQL实例存储压力及可扩展性,而分表是解决单张表数据过大以后查询的瓶颈问题,坦白说,这些问题也是所有关系型数据库的“硬伤”。

首先我们要知道分库、分表都是干啥的,本文主角还是我们的MySQL为第一视角。首先从字面意思来看:

分库:由单个数据库实例拆分成多个数据库实例,将数据分布到多个数据库实例中。
分表:由单张表拆分成多张表,将数据划分到多张表内。

今天我们就基于常见分库、分表的策略方式以及场景,来搞清楚我们到底啥时候用的到。常用策略包括:垂直分表、水平分表、垂直分库、水平分库。


一、朴实无华的 - 分表

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ShardingSphere是一个开源的分布式数据库中间件,用于实现分库分库是将一个数据库按照一定的规则分成多个库或者多个,从而达到提高数据库性能和扩展性的目的。 在ShardingSphere中,可以通过配置公共的方式来实现分库。通过设置配置文件中的参数,指定需要进行分库以及相应的规则和算法。例如,在配置文件中可以设置公共分库的策略,如分库数量、分数量、分片键的生成策略等。引用 同时,在使用ShardingSphere进行分库时,需要进行综合评估确定分库的数量。一般建议初次分库时,将数据库分为4-8个库。引用 分库可以解决一些问题,例如垂直分可以将热门数据和冷门数据分开存储,同时将大字段放在冷门数据中。垂直分库可以按照业务进行拆分,将不同的业务放在不同的库中,解决单一服务器性能的瓶颈,提升整体架构的业务清晰度。水平分可以解决单一数据量过大的问题,而水平分库可以将一个的数据分别分到不同的库中,解决单一服务器数据量过大的问题。引用 总结来说,ShardingSphere是一个用于实现分库的分布式数据库中间件,通过配置公共分库的策略,可以将数据库按照一定规则进行分割,从而提高数据库性能和扩展性。分库的选择需要综合评估,并根据实际业务需求来确定分库的数量和策略。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值