【TiDB 4.0 PCTA 学习笔记】- 1.3 A Brief History About the TiDB database platform(TiDB 发展简史)@ 4班+王晓俊

课程名称:课程版本(101/201/301)+ 课程名称

学习时长:

20

课程收获:

学习了Tidb的架构,包括Tispark,,Tiflash,以及为何被称为HTAP数据库。

课程内容:

1.0.0

  • 计算和存储两个方面无线扩展

  • 兼容mysql

  • 对应用透明的数据分片策略

  • 强一致的分布式事务

TIDB: 无状态的sql引擎

TiKV: 分布式KV存储引擎,

由raft算法实现副本之间的复制来保证高可用

PD:负责元数据的存储和TiKV中数据的调度

简单来说,由于Tidb可以无限横向扩容的特性,就好比容量无限大的Mysql


此时的Tidb具有很好的中台能力,在中台场景中,可以通过数据头部工具syncer向Tidb进行数据汇总

由于Coprocessor的存在,汇总的数据可以并行地在TiKV中进行聚合,生成报表。

TiDB十分适用于数据中台的场景

协议兼容,可以从mysql同步到Tidb

不需要数据分片,对应用透明

数据实时汇总,把备机和中台二者合二为一

使用一段时间后

OLTP场景:
虽然有一些问题,但基本上很友好

OLAP场景:

复杂查询太慢

容易OOM

不能和大数据平台整合

解决方案:

将Tidb和Tikv串起来,组成MPP引擎

风险高,周期长

寻求开源的分布式计算组件

需要成熟和广发的用户基础

TiSpark诞生


分布式的计算框架,更快更稳定

无缝接入大数据的生态,脚本,pythoh,R都可以轻松操作TiDb

缺点:

并发数低,消耗资源

用户希望使用高并发的同时,使用中等规模的AP查询

性能对比

核心矛盾:

  1. 行存不适合做分析

  2. 没有做资源隔离

TiFlash

通过raft learner同步一组列存

同步的代价极低,读取时通过raft index 结合MVCC实现了

通过打标签的方式实现了物理隔离。

AP/TP不会互相影响




今天

真正的HTAP

一个兼容行存储和列存储的平台,数据轻松同步

TIDB集群提供TP业务的同时,可以在列存上轻松进行分析

学习过程中参考的其他资料