1 分布式数据库发展
分布式数据库是随着业务规模不断扩大,单机数据库架构无法支撑,进而发展起来的。
2 分库分表——垂直还是水平
垂直切分(通常称为"分库"),是指按功能切分数据库,表和表之间的功能关联紧密的存放于一个数据库。比如一些电商平台,原先一个数据库实例,按功能切分为会员数据库、商品数据库、交易数据库、物流数据库等多个数据库实例,共同承担业务压力

水平切分(通常称为"分表"),在垂直切分不能彻底解决单台数据库服务器的负载时,按照某种规则,把一个表的数据分散到多个物理独立的数据库服务器中,也可以称为分片技术。

一般来说,分表的前提是先分库。

水平拆分的方案,实际上是分布式架构最直接的体现,与Oracle RAC的最大不同就是每个计算节点都参与计算和数据存储,每个计算节点都仅存储一部分数据,因此,分布式数据库从架构上来讲,性能是可以线性增长的。

3.分表的原理简介
当用户发起执行SQL语句的请求时,数据路由会理解SQL语句的含义,然后按照拆分键的值和执行策略将SQL到对应数据库进行执行。

数据合并
如果一个SQL语句被路由到多个分表执行,mycat中间件会将各个分表返回的数据按照原始SQL语义进行合并,并将最终结果返回给用户

文章转载自初七的学习笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




