NewSQL-TiDB First Blood

五大核心特征

  1. 水平扩缩容
  2. 高可用,分布式事务支持
  3. HTAP(OLTP+OLAP)
  4. 分布式
  5. 兼容MySQL5.7协议

竞品:MySql差异化

  1. TiDB纯国产化技术,尤其适用于政府项目
  2. 数据量上来之后的解决方案之一,优于古老的分库分表技术,但是替换底层数据库是个需要慎重考虑的决策

整体架构

在这里插入图片描述

四大模块

TiDB Server:SQL层
负责:接受客户端连接,执行SQL解析优化
特点:本身并不存储数据,只是解析SQL,将实际的请求转发给底层存储节点TiKV或者TiFlash

PD Server:集群的大脑
负责:集群元信息管理,为分布式事务分配事务ID
特点:TiDB集群的元信息管理模块

TiKV Server:数据存储
负责:存储Key-Value数据

TiFlash Server:数据存储
负责:存储列式数据

FAQ

分布式主键id如何分配?
TiDB 实现 AUTO_INCREMENT 隐式分配的原理是:
对于每一个自增列,都使用一个全局可见的键值对用于记录当前已分配的最大 ID。
由于分布式环境下的节点通信存在一定开销,为了避免写请求放大的问题,每个 TiDB 节点在分配 ID 时,都申请一段 ID 作为缓存,用完之后再去取下一段,而不是每次分配都向存储节点申请。
唯一性保证:
在集群中有多个 TiDB 实例时,如果表结构中有自增 ID,建议不要混用显式插入和隐式分配
(即自增列的缺省值和自定义值),否则可能会破坏隐式分配值的唯一性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值