tidb_biuil_stats_concurrency 执行analyze table时会分成多个小任务,可以同时执行的任务数量。
tidb_distsql_scan_concurrency 在执行分析表时一次读的region
tidb_index_serial_scan_concurrency 执行分析索引时,一次读的Region

tidb_auto_analyze_ration 自动更新阈值(当表的修改行数比上总行数大于这个比例)
tidb_auto_analyze_start_time 一天中能够进行自动更新的开始时间
tidb_auto_analyze_start_time 一天中能够进行自动更新的结束时间
查看analyze状态
show analyze sttus;

查看表的元数据
show stats_meta where db_name='' and table_name='';
查看表的健康度
show stats_healthy where db_name='' and table_name='';
查看列的元信息
show stats_histograms where db_name='' and table_name='';
查看直方图信息
show stats_buckets where db_name='' and table_name='';

查看DDL操作列表
admin show ddl jobs;
tidb_ddl_reorg_worker_cnt 控制DDL操作re-organize阶段的并发度
tidb_ddl_reorg_batch_size 控制每个worker一起回填数据单位,以batch为单位
tidb_ddl_reorg_priority 调整创建索引优先级,参数有PRIORITY_LOW/PRIORITY_NORMAL/PRIORITY_HIGH
tidb_ddl_error_count_limit 失败重试次数,如果超过该次数索引创建失败

-----------------
33分
TIDB-Server 参数
max-procs: 控制每个TIDB-SERVER可以使用的CPU个数

token-limit 配置可以同时执行请求的session的数量,用于流量控制。默认1000
force_priority 控制TIDB-SERVER访问TIKV的优先级,不同任务的TIDB设置不同优先级

committer-concurrency 控制一个事务commit的最大并发数量

grpc-connection-count 设置TIDB和TIKV之间的grpc连接数量,可以通过监控看grpc等待时间,如果过高,就调整这个参数
Prepared Plan Cache:开启后减少执行计划造成的计算开销

Concurrency
tidb_distsql_scan_concurrency 控制TableScan和IndexScan算子的并发度
tidb_index_lookup_concurrency 控制IndexLookUp算子的并发度
tidb_build_stats_concurrency 控制Alalyze执行的并发度,可能会影响在线业务的延迟
tidb_hash_join_concurrecy 控制hashjoin算子的并发度
tidb_index_okkup_join_concurrency 控制IndexLookUpJoin算子的并发度
tidb_ddl_reorg_worker_cnt 控制DDL加索引的并发度

Batch Size
tidb_init_chunk_size 设置初始chunk的行数,默认32(1-32)
tidb_max_chunk_size 默认1024,系统会自动调整chunk大小,最大到这个值
tidb_index_join_batch_size 每次从t1 t2表取行的行数,默认值是25000

tidb_store_limit 控制同时发往一个tikv节点的请求数量
tidb_retry_limit 控制乐观事务的重试次数
Backoff
tidb_backoff_weight Tidb backoff最大时间的权重,通过这个变量调整最大重试时间
tidb_backoff_lock_fast 请求遇到锁的backoff时间
-------------------
PD 参数
scheduler介绍
balance-leader-scheduler:保持不同节点的Ledaer分布
balance-region-scheduler:保持不同节点的Peer均衡
host-region-scheduler:保持不同节点的读写热点region
evict-leader-{store-id}:驱逐某个节点的所有Leader

调度Limit参数,
控制产生速度
region-schedule-limit 同时进行Region调度的任务个数
leader-schedule-limit 同时进行leader调度的任务个数
replica-shcedule-limit 同时进行replica调度的任务个数
merge-schedule-limit 同时进行的Region Merge调度的任务,设置为0关闭Region Merge
hot-greion-schedule-limit 控制同时进行的hot Region任务,该配置项独立于Region调度。
控制消费者
store limit
限制单个store的消费速度
pd-ctl -u ip:port store limit <id> <value>

patrol-reion-interval 控制扫region的间隔,默认100ms,通常不需要调整
查看并修改调度参数
config show: 显示当前调度相关参数
config set <key> <value> 修改相关参数

Operator show [admin | leader | region] 展示当前全局者或者是某类的调度任务
operator add --人工添加一些调度任务实现期望目标,例如:
operator add add-peer <region_id><store_id>

operator add remove-peer <region_id><store_id>
operator add transfer=leader <region_id><store_id>

逐驱leader
scheduler add evict-leader-scheduler 5
去除schedulr
scheduler remove evict-leader-scheduler
查看leader分布
select store_id,leader_count,leader_weight,region_count,region_weight from INFORMATION_SCHEMA.TIKV_STORE_STATUS;

消费速度控制
pd-ctl -u ip:port store limit <store_id> <value>

根据region-id查表名
curl http://{TiDBIP}:10080/regions/{regionID}

查看leader分布
[root@root ~]# tiup ctl:v5.1.1 pd -u http://172.16.1.10:2379 -i
Starting component `ctl`: /root/.tiup/components/ctl/v5.1.1/ctl pd -u http://172.16.1.10:2379 -i
» store

查看tikv参数
tiup ctl:v5.1.1 pd -u http://172.16.1.10:2379 config show scheduler

查看热点读region
[root@root ~]# tiup ctl:v5.1.1 pd -u http://172.16.1.10:2379 -i
Starting component `ctl`: /root/.tiup/components/ctl/v5.1.1/ctl pd -u http://172.16.1.10:2379 -i
» region topread 5
region topwrite 5 --热点写retion

1、建表时建议如何打散数据,
2、是否要提前自定义好region数量,建议几个
3、如果只打散,但不定义region,启不还是写一个region?

热点排查:
流量可视化,查看热点名称 ceshi t1 row_829267~row_576460752... 或者 START KEY .... END KEY
show table t1 regions --可以查看到region范围,region_id、leader_id、leader_store_id。
PD大盘Heartbeta,Region heartbeat report 可以查看store和IP对应关系。

根据START KEY 查region id
pd-ctl:
tiup ctl:v5.1.1 pd -i -u http://172.16.1.10:2379
region key 7480000000000000FFA95F728000000000FF0CA7530000000000FA --也可返回region详细信息

分裂出一个新的region
» region key 7480000000000000FFA95F728000000000FF0CA7530000000000FA
{
"id": 72057,
"start_key": "7480000000000000FFA95F728000000000FF0CA7530000000000FA",
"end_key": "7480000000000000FFA95F7287FFFFFFFFFFFFFFFF0000000000FA",
"epoch": {
"conf_ver": 7,
"version": 174
},
"peers": [
{
"id": 72058,
"store_id": 1,
"role_name": "Voter"
},
{
"id": 72059,
"store_id": 4,
"role_name": "Voter"
},
{
"id": 72060,
"store_id": 5,
"role_name": "Voter"
}
],
"leader": {
"id": 72058,
"store_id": 1,
"role_name": "Voter"
},
"written_bytes": 0,
"read_bytes": 0,
"written_keys": 0,
"read_keys": 0,
"approximate_size": 61,
"approximate_keys": 377485
}

分裂region
» operator add split-region 72057 --policy=approximate
分裂后的region_id号最大
Success!
迁走region
» operator add transfer-leader 73001 5
Success!

建表分列region
SPLIT TABLE TEST_HOTSPOT BETWEEN (0) AND (9223372036854775807) REGIONS 128;

查看region分布
SELECT p.STORE_ID, COUNT(s.REGION_ID) PEER_COUNT FROM INFORMATION_SCHEMA.TIKV_REGION_STATUS s JOIN INFORMATION_SCHEMA.TIKV_REGION_PEERS p ON s.REGION_ID = p.REGION_ID WHERE TABLE_NAME = 't1' AND p.is_leader = 1 GROUP BY p.STORE_ID ORDER BY PEER_COUNT DESC;

CREATE TABLE `t6` (
`id2` varchar(20) NOT NULL,
PRIMARY KEY (`id2`) /*T![clustered_index] CLUSTERED */
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin/*!90000 SHARD_ROW_ID_BITS=4 */

leader/region分布不均匀
socre接近
1、存在热点,
2、大量空retion小region
3、不同store硬件
4、其它不明原因,调整leader-weight region-weight

score不一样,查operator 相关metrics

调度正常,但速度慢
leader-schedule-limit
region-schedule-limit 这两个调大
max-pending-peer-count
max-snapshot-count 酌情调大

tidb 杂记的更多相关文章

  1. [Erlang 0118] Erlang 杂记 V

       我在知乎回答问题不多,这个问题: "对你职业生涯帮助最大的习惯是什么?它是如何帮助你的?",我还是主动回答了一下.    做笔记 一开始笔记软件做的不好的时候就发邮件给自己, ...

  2. Ubuntu杂记——Ubuntu下用虚拟机共享上网

    由于最近把自己电脑环境换成了Ubuntu,但学校的网络是电信的闪讯,大学里用过的人都知道这货有多坑,而且没有Linux客户端,上网都是问题,怪不得国内用Linux的人那么少,特别是高校的学生(让我瞎逼 ...

  3. 一个ubuntu phper的自我修养(杂记)

    ubuntu使用杂记 1.flatabulous安装使用. flatabulous是一个ubuntu图标主题. 使用它,必须得安装tweak插件. sudo add-apt-repository pp ...

  4. 有关Java的日期处理的一些杂记

    在企业应用开发中,经常会遇到日期的相关处理,说实话JDK自带的日期方法很难用.就我个人而言我一般都会采用joda-time来替代JDK自身的日期. 这篇文章是杂记,所以写的比较零散,希望大家不要见怪. ...

  5. 分布式系统之CAP理论杂记[转]

    分布式系统之CAP理论杂记 http://www.cnblogs.com/highriver/archive/2011/09/15/2176833.html 分布式系统的CAP理论: 理论首先把分布式 ...

  6. Redis杂记

    参考资料: Redis 教程 | 菜鸟教程 : http://www.runoob.com/redis/redis-tutorial.html Redis快速入门 :http://www.yiibai ...

  7. MySQL杂记

    参考资料: w3school  SQL 教程 : http://www.w3school.com.cn/sql/index.asp 21分钟 MySQL 入门教程 : http://www.cnblo ...

  8. Android之开发杂记(一)

    1.cygwin环境变量设置 可在Cygwin.bat 中设置 set NDK_ROOT=P:/android/android-ndk-r8e 或者在home\Administrator\.bash_ ...

  9. TIDB ---NEW SQL

    https://github.com/pingcap/tidb http://www.pingcap.com/ Quick Start Run TiDB with Docker You can qui ...

  10. ios程序开发杂记

    ios程序开发杂记 一.程序构建 与一般的程序构建无太大区别,都是源文件编译链接这一套,通常是在mac上做交叉编译,也就是利用xcode里带的ios编译工具集去生成arm架构的ios程序(或是x86的 ...

随机推荐

  1. [代码审计基础 15]phpmcs_v9.6 rce

    PHP:5.4.5 设置调试:https://blog.csdn.net/m0_46641521/article/details/120107786 版本:phpcms_v9.6.0_UTF8 0x0 ...

  2. JZOJ 3207.Orthogonal Anagram

    \(\text{Problem}\) 给出一个字符串,求经过重新排列的另一个字典序最小的字符串,满足:相同的位置上 原串与结果串的字符不同.不存在则输出空串. \(\text{Solution}\) ...

  3. Balanced Team

    https://vjudge.net/problem/CodeForces-1133C 题意:在数组中找出一段  每两个元素差值不大于5的这段元素个数的最大值. 1 #include <iost ...

  4. JavaSE 对象与类(一)

    对象与类 1.面向对象程序概述 Java是完全面向对象的,必须熟悉OOP才能够编写Java程序. 概念:类class.实例(对象)instance 由类构造(construct)对象的过程称为创建类的 ...

  5. 超声能指导持续临床缓解的长病程RA患者减停TNF抑制剂吗

    标签:类风湿关节炎; TNF拮抗剂; 超声缓解; TNFi减停 超声能指导持续临床缓解的长病程RA患者减停TNF抑制剂吗 电邮发布日期: 2016年2月25日 截至目前,针对类风湿关节炎(RA),尚未 ...

  6. .net 移动mas短信接口开发

    接口文档下载 1.移动后台接入用户新增(选择HTTP协议) 2.后台代码 /// <summary>    /// 用户名    /// </summary>    priva ...

  7. 【论文笔记】UNet

    语义分割的U-Net网络结构Unet是2015年诞生的模型,它几乎是当前segmentation项目中应用最广的模型.Unet能从更少的训练图像中进行学习,当它在少于40张图的生物医学数据集上训练时, ...

  8. HTTP/2 VS HTTP/3

    HTTP(Hypertext Transfer Protocol)超文本传输协议是万维网中应用最广泛的应用层传输协议.HTTP起源于80年代末,最初构想是一个基于单行文本的的协议,第一个协议版本是HT ...

  9. 将python2.7项目转为Python3问题记录

    将一个Python2.7开发的测试工具项目转化为Python3. 工具:Python自带的2to3.py 将所有.py文件进行转化,生成的python3文件为原文件名,python2文件在后面加.ba ...

  10. Android FragmentTabHost底部选项卡实现

    记录一下底部选项卡的实现,很常见的代码,大神勿嘲笑. 说一下思路,在activity底部要放上FragmentTabHost放上选项,几个无所谓,每个选项卡都对应一个fragment,点击选项卡颜色改 ...