• 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 进程,进行灾难恢复

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

  • 相关阅读:
    Thymeleaf
    快速创建springBoot
    多环境的配置
    第一个SpringBoot
    shiro第三天整合jdbc
    shrio 第二天
    Python 算法集合
    张凤强-《工会固定资产管理系统的设计与实现》随笔
    李翔-《营口港资产管理系统设计与实现》随笔
    刘晶-《高校固定资产管理系统的设计与实现》随笔
  • 原文地址:https://www.cnblogs.com/chinaops/p/15511654.html
Copyright © 2020-2023  润新知