PingCAP-Infra-Meetup-104-云原生数据库的核心特点-TiDB+架构及发展

杨洋老师本次分享的主要内容为: 1.介绍了云原生的概念及演化; 2.结合云原生的特点分析传统数据库在架构方面的不足; 3.着重介绍云原生数据库在架构方面的特点; 4.作为云原生数据库中的佼佼者 TiDB 的技术架构是怎样的; 5.TiDB 版本的演进,用户案例展示,技术社区活动介绍。
展开查看详情

1.云原生数据库的核心特点 TiDB架构及发展 Presented by 杨洋

2.Part I – 云原生数据库的核心特点

3.什么是云原生? ● 应用容器化 ● 面向微服务架构 ● 应用支持容器的编排调度 ● 在公有云,私有云以及混合云等新型动 态环境中,构建和运行可弹性扩展的应 用 PingCAP.com

4.传统数据库的不足 ● 资源难以动态伸缩 ● 单点问题 ● 吞吐量受限 ● 单表海量数据性能瓶颈 PingCAP.com

5.云原生数据库的特点 上手简单 弹性伸缩 高可用 高吞吐 数据安全 PingCAP.com

6.云原生数据库的特点 Add new node Raft Node Node ● 弹性伸缩 Raft Raft Node Node Raft PingCAP.com

7.云原生数据库的特点 Node failed Node Node ● 弹性伸缩 ● 高可用 Raft Raft Node Node Raft PingCAP.com

8.云原生数据库的特点 Client Client Client Node ● 弹性伸缩 ● 高可用 Raft Client ● 高吞吐 Raft Node Node Raft Client PingCAP.com

9.云原生数据库的特点 Client ● 弹性伸缩 ● 高可用 ● 高吞吐 ● 数据安全 PingCAP.com

10.云原生数据库的特点 Client package main ● 弹性伸缩 import ( "database/sql" ● 高可用 _ "github.com/go-sql-driver/mysql" "log" ● 高吞吐 ) func main() { ● 数据安全 db, err := sql.Open("mysql", "user:password@tcp(ip:port)/database") if err != nil { ● 上手简单 } log.Println(err) defer db.Close() } PingCAP.com

11.Part II – TiDB架构介绍

12.TiDB数据库架构

13.TiDB组件架构 Transaction MVCC RaftKV PingCAP.com

14.TiKV&PD组件架构 Transaction MVCC RaftKV PingCAP.com

15.TiSpark组件架构 PingCAP.com

16.Part III - TiDB的发展

17.不断进化 ● 2017年10月发布 1.0 GA Ver1.0 Ver2.0 Ver3.0 ● 2018 年 4 月 27 日,TiDB 发布 2.0 GA 版 ● 2019 年 5 月 10 日,TiDB 发布 3.0.0- 2017 2018 2019 Present rc.1 ● More . . . SQL查询优化器 SQL执行引擎 Multi-thread MySQL协议兼 TiSpark Ver1.0 RaftStore 容 Concurrent Batch Message 集群规模支持 DDL Operation Titan 200 个节点 ... ... ... PingCAP.com

18.活跃的开发者社区 ● 457名contributor ● 累计举办100多场meetup ● 成功举办两届TiDB开发者大会 ● 联合主办首届RustCon Asia ● More . . . PingCAP.com

19.客户案例 TiDB现已有准生产测试用户 1400 余家, 并被 300 余家不同行业的领先企业应用在实际生产环境。 PingCAP.com

20.Thank You ! Q&A

TiDB 是一款定位于在线事务处理/在线分析处理( HTAP: Hybrid Transactional/Analytical Processing)的融合型数据库产品,实现了一键水平伸缩,强一致性的多副本数据安全,分布式事务,实时 OLAP 等重要特性。