当前位置: 首页 > news >正文

TiDB学习1:TiDB体系架构概览

目录

1. TiDB体系结构

2. TiDBsever

3. TiKV

4. PD(Placement Driver)

5. TiFlash


1. TiDB体系结构

  • 水平扩容或者缩容
  • 金融级高可用
  • 实时 HTAP
  • 云原生的分布式数据库
  • 兼容MySQ 5.7 协议

2. TiDBsever

  • 处理客户端的连接
  • SQL语句的解析和编译
  • 关系型数据与 kv 的转化(insert语句)
  • SQL 语句的执行
  • 执行 online DDL
  • 垃圾回收(GC)

3. TiKV

  • 数据持久化(行存)
  • 副本的强一致性和高可用性
  • MVCC(多版本并发控制)
  • 分布式事务支持
  • Coprocessor(算子下推)

每个TiKV中运行了rocksdb数据库保证数据持久化,TiDB中存的是KeyValue对,键值对存在rocksdb kv实例,rocksdb raft存指令(增删改),Raft协议保证高可用,有其他副本存在其他节点(默认总共三个副本,其中一个副本是leader可读写)

一个region在96M~144M之间

4. PD(Placement Driver)

PD:集群大脑,元数据存在PD(数据在在哪些TiKV或者TiFlash上),每条sql的开始时间(TSO时间戳),事务开始和结束的TSO

  • 整个集群 TiKV 的元数据存储
  • 分配全局 ID 和事务 ID
  • 生成全局时间戳 TSO
  • 收集集群信息进行调度
  • 提供 TiDB Dashboard服务

5. TiFlash

  • 异步复制
  • 一致性
  • 列式存储提高分析查询效率
  • 业务隔离
  • 智能选择 

总结

  • 描述 TiDB 数据库的整体架构
  • 理解 TiDB server,rikv,rirlash 和PD 的主要功能

来自TiDB官方学习资料

http://www.lryc.cn/news/350428.html

相关文章:

  • Prometheus 保留或删除标签 labeldrop、labelkeep
  • uniapp中实现保存图片,复制信息功能函数的封装
  • C#【进阶】委托和事件
  • 【class9】人工智能初步(处理单张图片)
  • cgicc开发 (结合jsoncpp)
  • HTML常用标签及属性
  • 【PB案例学习笔记】-03用户名密码校验
  • 设计模式六大原则之 接口分离原则
  • 嵌入式学习——Shell()——day21
  • STM32学习计划
  • 小米15曝光?可能会要稍微涨价
  • 深度优先搜索汇总
  • 【虚拟仿真】Unity3D中实现对大疆无人机遥控器手柄按键响应
  • Python学习之路 | Python基础语法(一)
  • 【已解决】AttributeError: module ‘clip‘ has no attribute ‘load‘
  • 安卓实现连接wesokcet
  • Xinstall助力App下载量精准统计,洞悉推广效果
  • CSS字体修饰
  • 高并发缓存服务的构建要点与陷阱
  • Electron学习笔记(五)
  • 【jest 调试 - vscode debug】
  • 华为OD机试【分奖金】(java)(100分)
  • 27- ESP32-S3 USB虚拟串口(USB-OTG 外设介绍)
  • PostgreSQL查看sql的执行计划
  • macOS Ventura 13如何设置定时重启(命令行)
  • 【sass简介以及如何安装使用】
  • Git版本控制工具的原理及应用详解(四)
  • AI图书推荐:ChatGPT全面指南—用AI帮你更健康、更富有、更智慧
  • C++ | Leetcode C++题解之第92题反转链表II
  • 【管理咨询宝藏99】离散制造智能工厂战略规划方案