1.3 A Brief History About the TiDB database platform(TiDB 发展简史)+1.4 The TiDB platform architecture and landscape(TiDB 平台架构和全景图)+1.5 Important features of TiDB database platform(TiDB 技术特性)
学习时长:90
课程收获:了解了TIDB基础架构,扩展架构以及各组件的作用。TIDB4.0新增加的一些功能、和各类型数据库集群等的对比,TIDB新版本的改进和老版本的劣势等。
课程内容:
1.3TIDB发展简史
早期,从1.0开始,兼容了MYSQL的语法和协议
原始架构:
TIDB:一个无状态的sql引擎,可以分布式启动
TIKV:分布式KV存储引擎,用rap算法?在副本间复制来保证高可用
PD:主管源数据的存储和TIKV的调度
因为具备无线横向扩展的特性,可被认为是容量无线大的单机MYSQL
具有良好的仲裁能力,在仲裁场景中可以通过头部工具Syncer想TIDB进行数据的汇总,可进行数据的聚合并生成报表
融入TISPARK:提供一个分布式的计算框架,无缝接入大数据框架,缺点:并发度低,消耗资源大,所有用户更愿意用TIDB,分区表等等
融入TIFLASH:同步的代价极低
1.4
TIDB CORE SYSTEM(TIDB内核系统?)
TIKV 存储层,两边TIDB和TISPARK分别处理MYSQL和SPARKSQL,上面的PD与其他组件均有交互,存储整个集群的源数据,负责分配TSO,数据定位等等功能
TIDB是无状态的SQL层,客户端可连任意一个TIDB实例,兼容MYSQL协议功能完善,有基于代价的优化器,二级索引,可在线DDL
TIKV和TIFLASH 是存储层,TIKV是行式存储更加适合事务处理(OLTP?)TIFLASH是列式存储,适合分析处理(OLAP?)
根据优化器处理,事务类走TIKV,分析类走FIFLASH,从而最大程度的隔离OLTP和OLAP
PD:智能大脑,保证高可用
TISPARK:OLAP解决方案,主要解决系统架构和运维压力
TIUP:4.0新功能,组件管理工具,可提供单机部署,集群部署,版本控制,分发的功能
LIGHTNING:用于TIDB的全量导入工具,支持从MYDUMPER和CSV数据源
DUMPLING:TIDB的全量导出工具 (ORACLE的impdp?很像数据泵)格式为SQL和CSV
FAST BACKUP和RESTORE:对TIDB备份和还原的工具,可单库,单表,直接从TIKV存储层入手,把备份和恢复任务下发至各个TIKV执行,可将CPU负载和IO均匀分布在个TIKV节点上,性能可随TIKV的节点数水平扩展的
TICDC:TIDB的增量同步工具
组件太多,慢慢学吧,希望视频中的老师英文讲的慢些,听不太清楚
1.5
TIDB基础架构:TIDB:计算引擎,处理应用层的连接,sql解析 TIKV:存储引擎 PD:调度引擎 简单直接!!
TIDB扩展建构:TISPARK:分布式并行计算(多大数据表连接等)
TIDB特性:
在线可扩展性:对比了ORACLE RAC(缺点是硬件扩展-共享存储的局限),TIDB SHARE NOTHING
高可用性:无限扩展,知乎300多节点,300TB,RATF:多副本强一致
分布式事务:对于业务来说,TIDB不需要指定分片键(主键外键一类的?)
实时HTAP:基于RAFT base的行列并存的架构,OLTP的副本通过RAFT复制一份并转换为列式副本提供OLAP的查询,通过CDO(优化器模型,简称待确认)自动识别,点存点写发送至TIKV,统计类的发送至TIFLASH
TIDB4.0的优化和提升
新的安装部署工具:TIUP,在线快速部署,离线下载包等(最好应用与测试环境。。)
大事务支持:4.0之前经常出现超出事务限制,事务限制从100mb提升至10gb
临时表的支持:避免内存溢出,优化大SQL响应
可视化运维:DASHBOARD可快速查看集群组件状态等,可快速识别热点,快速定位慢SQL,提供性能调优建议
云的调度:对PD的算法的优化