TIDB 数据库架构概述

打印 上一主题 下一主题

主题 900|帖子 900|积分 2700

学习目的


  • 理解数据库整体架构
  • 相识 TiDB ServerTiKVTiFlash、和 PD 的主要功能
文章末尾获取笔记、视频资料,连续更新
体系架构


  • 水平扩容大概缩容
  • 金融级高可用
  • 实时 HTAP
  • 云原生的分布式数据库
  • 兼容 MySql5.7 协议

 
TiDB 体系架构图
组件

TiDB Server

TiDB Server 是 TiDB 分布式数据库的 SQL 层,是整个系统的入口。
功能


  • 处置惩罚客户端的毗连
  • SQL语句的解析、编译、生成实行计划
    生成sql语句,然后在TiKV 大概 TiFLASH上实行
  • 关系型数据与 KV 的转化
    TiKV 存的数据是键值对,将数据表转换为 KV 键值对
  • SQL语句实行(DDL语句)
  • 实行 online DDL
  • 垃圾回收(默认时间10分钟)
 
TiDB Server 工作流程
  1. 客户端请求 -> 
  2.     协议解析 -> 
  3.         SQL 解析 -> 
  4.             查询优化 -> 
  5.                 生成执行计划 -> 
  6.                     分布式执行 -> 
  7.                         返回结果
复制代码
TiKV

TiKV是TiDB 分布式数据库的存储层
存储结构
  1. Region (数据分片)
  2.     ├── Leader
  3.     └── Followers (多个副本)
  4.         ├── Follower 1
  5.         └── Follower 2
复制代码
功能


  • 数据持久化
  • 副本的强一致性和高可用性
  • MVCC (多版本并发控制)
  • 分布式事务支持
  • Coprocessor (算子下推)
 
TiKV 技术架构图核心组件
  1. 如上图所示
  2. RocksDB:底层存储引擎
  3. Raft:分布式一致性协议实现
  4. MVCC:多版本并发控制
  5. Transaction:分布式事务处理
复制代码
关键特性


  • 数据分片 (Region)

    • 按 Key Range 举行数据分片
    • 每个 Region 默认大小约 96MB到140MB
    • 凌驾阈值会自动分裂(Split)
    • 负载均衡时会自动调理

  • 复制与一致性

    • 采用 Multi-Raft 模型
    • 通常采用 3 副本或 5 副本
    • 强一致性保证
    • 自动故障转移

TiFlash

它是 TiDB 的列式存储引擎,专门用于 OLAP 分析场景
功能


  • 异步复制
  • 一致性
  • 列式存储进步分析查询效率
  • 业务隔离
  • 智能选择
    也可以手动指定sql选择 TiKV 大概 TiFlash

TiFlash 架构图
 
PD

功能


  • 整个集群TiKV的元数据存储
  • 分配全局ID和事务ID
  • 生成全局时间戳TSO
  • 收集集群信息举行调理
  • 提供 TiDB Dashboard 服务
 
PD 技术架构图测试

 
答案:

  • B、F
  • C
公众号回复 TIDB 得到笔记、视频

 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

傲渊山岳

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表