mysql垂直分库,水平分库,垂直分表,水平分表

作者: dreamfly 分类: mysql 发布时间: 2020-11-17 16:56

之前经常被问道这些分库分表的概念,只是大概知道,但是具体如何定义的,问什么这么定义还是不太理解,今天对着数据表中的数据沉思的时候,突然间醒悟,原来这些概念非常好理解,而且可以说水平和垂直这两个词用得恰到好处,非常形象地帮助我们理解它们。

水平分表

顾名思义,水平分表就是把表中的数据进行了水平切割,意味着按照行进行切割,也就是说不同行的数据被切割后可能在不同的表中。

水平分表

如图所示,根据水平切割之后,id为1和2的数据行会在一个表中,id为3,4的数据行会在一个表中,而id为5的数据会在一个表中,这就是水平分表。

垂直分表

也是一样,它的意思是把数据表进行了垂直分割,原来表中的列被分到了不同的表中。
垂直分表
如图所示,desc字段被切割后,会分配到另一张表中。
那么为什么要垂直分表,或者说什么情况下适合垂直分表?
答案就是垂直分表的目的就是讲表中的含有大量数据的字段,比如text字段,blob字段从表中分离出去,这样可以大大减轻原表的数据压力,而且这些字段的访问量没有其它字段的访问频率高,所以这么处理是合适的。

水平分库

如果你理解了上面的水平分表和垂直分表,那么数据库的分割你也会很好理解。
顾名思义,水平分库相当于把数据库水平切割,原来一个表中的数据可能会分配到不同的数据库中,这就是水平分库。

水平分库

如图所示,table1,table2,table3,table4中的数据都会被水平切割一刀,这样一个表中的数据可能就会被分配到不同的数据库中。

垂直分库

垂直分库,就是将数据库垂直分割,这回一个表中的数据不会被分配到不同数据库,但是不同表可能会分配到不同的数据库。

垂直分库

如图所示,经过垂直分割table1,table2会分到一个数据库db1,而table3,table4会分配到另一个数据库db2。

什么时候垂直分库呢?答案是根据业务逻辑进行分割。比如我们可以把用户表和用户相关的表分配到用户数据库中,而把商品表和商品相关的数据分配到商品数据库中。

总结

总之,无论是何种分割,我们的目的都是为了减少数据库的压力,然后尽可能减少查询带来的复杂性,只要掌握这两个核心,其实概念都是次要的,原理才是重要的。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

7条评论
  • Acousty

    2022年9月2日 03:05

    The Dudley Observatory book catalog is available here for download in PDF format Dudley Observatory book list cialis online without With Palance s dramatic interpretation of the text accompanied by the haunting percussion ensemble musical score by Hans Wurman, the film transcends the didactic historical and dry anthropological, and transfixes the viewer instead by offering an in-motion armchair view of the challenging location these long-forgotten people chose as home

  • Kebyecove

    2022年9月4日 08:39

    priligy seratonin I used 50mg is not that much helpful I

  • dwerbus

    2022年9月6日 07:22

    Only the Avalanche use something even close to resembling the same maroon colour, but they pair it with blue safe cialis online I take 1 4 of a pill at most, and it works more than efficiently for 2-3 days

  • pacyImmaw

    2022年9月8日 15:29

    purchasing cialis online Cialis Generic non perde la velocitГ  e la durata dell azione a differenza del Viagra mentre l uso contemporaneo con bevande alcoliche

  • ensuece

    2022年9月11日 06:43

    They may or not be accurate in PCOS due to the hormonal imbalance. clomid for bodybuilders

  • extedia

    2022年9月14日 09:27

  • AnnoutFus

    2022年9月18日 00:17

    Zucca E, Conconi A, Mughal TI, et al. doxycycline dosage for sinus infection NSAID containing medicines should only be used.

发表评论

您的电子邮箱地址不会被公开。