TiDB之PCTP(数据库专家)

 

考核⽬目标与要求

PCTP(PingCAP Certified TiDB Professional)是 PingCAP 公司认证 TiDB 数据库专家的缩写。PCTP 要求具备管理大型分布式关系型数据库集群的能力。PCTP 需要学习并熟练掌握 TiDB 的深度原理及高级 Feature、性能调优、SQL 优化、Trouble Shooting 等进阶内容。要成为 PCTP 必须先获得 PCTA 认证。

考试范围(理论考试 +上机实操考试)

PCTP 高级进阶篇 - 理论笔试

考试形式和计分规则:

  1. 指定考试中心集中进行在线考试;
  2. 考试时长 75 分钟,共 70 道题;

PCTP 理论考试范围:

一、TiDB 计算内核体系

  1. TiDB Server
  • TiDB Server 概览
  • TiDB Server 的启动、停止
    • 对 TiDB Server 启动有影响的启动参数和它们的作用
    • 怎么知道 TiDB 已经启动成功了?
    • 集群里不同 TiDB 有什么区别?怎么找到 DDL/Stats/GC 的 owner?
  • 客户端连接管理
    • 几种常见的连接方式(客户端/JDBC)/(TCP/Unix Socket)
    • SSL 的配置
    • 创建连接时,TiDB 都做了哪些工作?
    • 权限管理
    • Token Limit 的作用
    • TCP Keep Alive 的作用
    • prepare/execute 使用不同协议时的区别
    • 如何关闭连接
  • 常用对外端口
  1. TiDB Parser
  • Parser 基本原理
  • Parser 相关问题处理
    • 什么样的错误是 Parser 报错?
    • Parser 报错信息怎么解读?
  1. TiDB 关系型模型原理
  • TiDB 中表的分类
    • 物理表
    • Information Schema
    • mysql database
  • 关系型模型到 KV 的映射关系
  • Table Partition
    • TiDB Table Partition 的原理
    • 支持的 partition 类型
  1. DML 原理
  • 数据写入原理
  • 数据读取原理
  • Misc.
    • 几种不同的 Insert 语句语义区别
    • Replace 和 Insert on duplicate 的区别
    • 何时检测冲突?Insert 语句的 lazy check
    • 怎么改写语句让执行更快?
  1. DDL 原理
  • TiDB DDL 概述
  • TiDB drop table,truncate table,add column 等操作原理
  • TiDB DDL 问题诊断以及工具
  • TiDB Add index 操作原理以及调优

二、TiKV 存储内核体系

  1. TiKV 整体架构
  2. 存储引擎
  • RocksDB 介绍及主要特性
  • Column family 介绍
  • LSM 原理及优缺点
  • Compaction 原理
  • RocksDB 数据写入流程
  • Key Value 分离 Titan 的设计与实现
  • RocksDB 主要参数介绍
  1. Raft 复制
  • Raft 介绍及主要特性
  • Raft 各个角色及内部机制
  • Raft 在 TiKV 中的使用
  • TiKV 自动分片机制(Region)
  • Multi - Raft 设计与实现
  • Raft 与 Paxos
  • TiKV 中的 Raft 读写流程
  1. Coprocessor
  • 算子下推
  • 执行引擎模型
  1. Placement Driver 调度内核体系
  • ETCD 原理介绍
  • TiKV 元信息及管理
    • 节点,region
    • 元信息上报流程
  • PD 调度算法
    • 调度策略解析
    • Region 迁移过程
    • 如果通过打 label 来增加调度策略
    • Region Split、Merge
    • 如何通过 pd-ctl 管理集群

三、生态工具原理

  1. MySQL 数据同步到 TiDB 解决方案
  • DM 设计原理
    • DM 设计原理
    • DM 功能介绍
    • DM 数据同步处理单元设计原理
    • Relay log 实现原理
    • Binlog Replication 同步原理
  • Sharding DDL的实现与 checkpoint 机制
  • 常见错误和异常场景
    • 常见问题排查手段(不兼容 DDL 处理,借助 checkpoint 定位同步状态等)
    • 同步异常定位和处理方法(sharding DDL 阻塞,relay-log 异常,同步连接中断等问题
  1. TiDB 数据输出订阅解决方案
  • TiDB-Binlog 实现原理
    • TiDB binlog 概览
    • Pump 设计和实现
    • Drainer 设计和实现
  • Binlog 运维
    • pump/drainer 下线
    • Binlog 日志和监控详解
    • 常见的问题和处理手段
  1. TiDB 数据物理加载解决方案
  • Background
    • Why TiDB Lightning was created
    • Characteristics of TiDB Lightning
  • Import Process
    • Import mode
    • Core import process (Lightning, Importer)
    • Post-process (Checksum, Analyze, Auto-inc ID)
  • Deployment
    • Hardware requirement
    • Configurations
  • Extra Features
    • Table filter
    • Checkpoints
  • Monitoring
    • Introducing Grafana panels

四、事务

  1. 数据库事务概述
  • 事务概念介绍
  • OCC
  • 常见主流数据库的事务隔离级别及其行为介绍(MySQL、Postgres、CockroachDB)
  • TiDB 支持的事务隔离级别及其行为介绍
  • MySQL Repeatable Read 与 TiDB 的区别
  • 两阶段提交
  1. 分布式事务原理
  • Percolator 的原理
    • 简介
    • 写入过程
    • 读取过程
  • TiDB 事务原理
    • TiDB 怎么写入
    • TiDB 怎么读取
    • TiDB 如何清理锁
  1. TiDB 事务处理
  • SQL 事务
    • 事务启动
    • 事务中的DML
    • 语句提交和回滚
    • 事务提交和回滚
  • 常见提交错误
    • 写冲突处理
    • 读写冲突处理
    • 网络超时处理
  • 事务重试处理
    • 事务重试问题和实现
    • 重试行为控制
    • 重试相关日志和监控
  • select for update 处理
    • TiDB 和其他数据库处理区别
    • 处理 can not retry select for update

五、系统性能优化

  1. TiDB Server 性能相关原理
  • TiDB 常见系统负载
  • 读、写后台处理流程及主要性能瓶颈
  • 读热点及解决思路
  • 写热点及解决思路
  • TiDB Server 性能相关监控
  • 主要的性能相关参数
  1. TiKV 性能相关原理
  • 写入瓶颈分析和优化
  • 数据在 TiKV 中的读取流程及常见瓶颈
  • 读取瓶颈分析和优化及常见瓶颈
  • RocksDB 性能优化
  • RocksDB 主要的性能相关参数
  1. 集群系统负载
  • 常见 OS 负载处理
  • 性能定位 trace
  1. 常见性能优化 Case study
  • Sysbench 压测演练
  • 读热点定位和处理演练
  • 写热点定位和处理演练
  • 慢查询定位和处理演练
  • 其他瓶颈定位演练

六、SQL 优化

  1. 查询优化器原理
  • TiDB Logical Optimization,列举现有的优化规则
  • TiDB Physical Optimization,举例讲解物理优化过程中的 task type, expected row count, data order 等等物理属性
  • TiDB Ranger:Filter 条件如何构造成 Key Ranges
  • TiDB Plan Cache for Prepared statements
  1. TiDB Statistics
  • 直方图和 CM-Sketch 详细介绍,Selectivity 估算原理
  • Analyze Table 语句如何更新直方图和 CM-Sketch
  • Query Feedback 工作原理
  1. TiDB Execution Engine
  • Chunk 和 TiDB 向量化执行引擎原理介绍
  • TiDB 的表达式计算:向量化原理+SQL Mode Behaviors
  1. 表关联算法
  • Hash Join, Merge Join
  • Index Join, NestedLoopApply
  1. 其他算子
  • TiDB 的 Aggregate 算法:Hash Aggregate, Stream Aggregate
  • TIDB 的 Readers:IndexReader, TableReader, IndexLookupReader
  • TiDB Insert/Update/Delete/Replace implementations
  • DistSQL 中 Cop 请求如何发送的,CopIterator 如何工作的
  • Elastic OLTP&OLAP, Batch Size Control
  1. SQL 执行计划
  • 如果查看执行计划
  • 执行计划解读
  • CBO 模型
  • 驱动表
  • 数据寻址算法
  • 索引原理
  • 索引使用
  1. SQL 优化实践

七、高可用及容灾

  1. 高可用与思考(误区)
  2. 基于 Raft 协议高可用(组件特性)
  3. 基于 Binlog 数据备份同步架构
  4. 高可用实操

PCTP 高级进阶篇 - 上机实操考试

考试形式和计分规则:

  1. 指定考试中心集中上机考试,指定用机和云环境
  2. 考试时长 90 分钟
  3. 主要考核针对不同场景进行系统调优、SQL 优化、Trouble Shooting 等操作,强调解决问题的能力
  4. 考试期间需要将过程命令行及结果截图复制在指定文档上;考试期间对操作步骤进行录屏

考试环境:

  1. 官方考试用机为 UCloud 云环境 8-9 台 CPU:2C,内存:4G,磁盘:50G

考试题目举例:

TiKV 损坏场景恢复

场景:模拟多数 TiKV 损坏场景的 TiDB 集群恢复操作,在一套正常运行的集群下,手动删除其中两个 TiKV 部署目录、kill tikv-server 进程,进行灾难恢复

要求:写下具体操作步骤,并将命令返回的结果截图

posted @   青空如璃  阅读(975)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
点击右上角即可分享
微信分享提示