【技术硬核】庖丁解牛 | PostgreSQL与NewSQL大解析(四)

通过上文我们可以知道,NewSQL的优势在于SQL的支持能力、扩展性、实时性和事务的处理能力。在NewSQL蓬勃发展的前提下,许多新兴技术公司开始打造自己的新一代分布式数据库,其设计理念:

一、分布式架构

通过主节点下发任务的模式,每个节点都可以提供服务,在扩展性上,Master不会是瓶颈。
在这里插入图片描述
1、客户端通过不同的接口访问形式,直接访问主服务节点服务

2、主服务节点收到服务请求进行分析处理,分配到不同的分配服务节点执行

3、分片服务节点收到执行请求,进行sql解析处理并执行SQL计划

4、SQL执行服务底层存储数据进行处理访问,并反回处理结果

5、通过Raft协议确保服务之间数据同步

6、存储根据AP、TP分为共享存储和非共享存储

而与之相比较,PostgreSQL现在的分布式都是MPP的架构,share nothing,存在增加、减少节点数据重新分配的问题。

二、从分库分表走向Sharding与Partition(分片与分区)

通过我们前面对PostgreSQL的解读,数据分库分表是一种被迫的选择,无奈之举,如果能够不做分库分表,就尽量不要做这方面的设计,因为会对业务提出要求,或者改动业务。所以,我们在NewSQL的设计上,要多做Sharding与Partition(分片与分区)的设计。

数据分区
分区就是把一张表的数据分成N个区块,在逻辑上看最终只是一张表,但底层是由N个物理区块组成的。

什么时候考虑使用分区呢?当一张表的查询速度已经慢到影响使用的时候,数据量大,sql经过优化,表中的数据是分段的,或者对数据的操作往往只涉及一部分数据,而不是所有的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值