Tracing in TiDB 浅谈全链路监控: 从应用到数据库到 Runtime
浅谈全链路监控: 从应用到数据库到 Runtime 黄东旭, Co-founder & CTO, PingCAP 关于我 黄东旭,联合创始人 & CTO @ PingCAP 做分布式数据库的程序员 ● 现在能写代码的时间是奢侈品 TiDB 的亲爹之一兼首席客服和新功能的第一个用户 ● 冤有头债有主,SQL 慢了来找我。。。 偶尔玩玩音乐 ● 摇滚乐->实验音乐 Go 的粉丝!!!!0 码力 | 39 页 | 3.43 MB | 1 年前3TiDB v5.2 中文手册
System,System 对应的实 际时区在 TiDB 集群 bootstrap 初始化时设置。具体逻辑如下: • 优先使用 TZ 环境变量 • 如果失败,则从 /etc/localtime 的实际软链地址提取。 • 如果上面两种都失败则使用 UTC 作为系统时区。 在运行过程中可以修改全局时区: SET GLOBAL time_zone = timezone; TiDB 还可以通过设置 session 会触发所有诊断规则对系统进行诊断,并在结果中展示系统中的 故障或风险。 • 诊断汇总表information_schema.inspection_summary 用于对特定链路或模块的监控进行汇总,用户可 以根据整个模块或链路的上下文来排查定位问题。 299 8.4 定位消耗系统资源多的查询 TiDB 会将执行时间超过tidb_expensive_query_time_threshold 限制(默认值为 v5.1 及以后的版本,建议尝试查询 INFORMATION_SCHEMA.DEADLOCKS 或 INFORMATION_SCHEMA.CLUSTER_DEADLOCKS 系统表来获取死锁的等待链信息。详情请参考死锁错误小 节和DEADLOCKS 表文档。 • 如果出现非常频繁,需要调整业务代码来降低死锁发生概率。 8.12.2.4 使用 Lock View 排查悲观锁相关的问题 自 v50 码力 | 2259 页 | 48.16 MB | 1 年前3TiDB v5.1 中文手册
System,System 对应的实 际时区在 TiDB 集群 bootstrap 初始化时设置。具体逻辑如下: • 优先使用 TZ 环境变量 • 如果失败,则从 /etc/localtime 的实际软链地址提取。 • 如果上面两种都失败则使用 UTC 作为系统时区。 在运行过程中可以修改全局时区: SET GLOBAL time_zone = timezone; TiDB 还可以通过设置 session 会触发所有诊断规则对系统进行诊断,并在结果中展示系统中的 故障或风险。 • 诊断汇总表information_schema.inspection_summary 用于对特定链路或模块的监控进行汇总,用户可 以根据整个模块或链路的上下文来排查定位问题。 290 8.4 定位消耗系统资源多的查询 TiDB 会将执行时间超过tidb_expensive_query_time_threshold 限制(默认值为 v5.1 及以后的版本,建议尝试查询 INFORMATION_SCHEMA.DEADLOCKS 或 INFORMATION_SCHEMA.CLUSTER_DEADLOCKS 系统表来获取死锁的等待链信息。详情请参考死锁错误小 节和DEADLOCKS 表文档。 • 如果出现非常频繁,需要调整业务代码来降低死锁发生概率。 8.12.2.4 使用 Lock View 排查悲观锁相关的问题 自 v50 码力 | 2189 页 | 47.96 MB | 1 年前3TiDB v5.4 中文手册
System,System 对应的实 际时区在 TiDB 集群 bootstrap 初始化时设置。具体逻辑如下: • 优先使用 TZ 环境变量 • 如果失败,则从 /etc/localtime 的实际软链地址提取。 • 如果上面两种都失败则使用 UTC 作为系统时区。 在运行过程中可以修改全局时区: SET GLOBAL time_zone = timezone; TiDB 还可以通过设置 session 会触发所有诊断规则对系统进行诊断,并在结果中展示系统中的 故障或风险。 • 诊断汇总表information_schema.inspection_summary 用于对特定链路或模块的监控进行汇总,用户可 以根据整个模块或链路的上下文来排查定位问题。 381 8.4 Top SQL 警告: Top SQL 目前为实验特性,不建议在生产环境中使用。 本文介绍如何使用 Top SQL 找到一段时间内对某个 v5.1 及以后的版本,建议尝试查询 INFORMATION_SCHEMA.DEADLOCKS 或 INFORMATION_SCHEMA.CLUSTER_DEADLOCKS 系统表来获取死锁的等待链信息。详情请参考死锁错误小 节和DEADLOCKS 表文档。 • 如果死锁出现非常频繁,需要调整业务代码来降低发生概率。 442 8.15 TiFlash 常见问题 本文介绍了一些 TiFlash0 码力 | 2852 页 | 52.59 MB | 1 年前3TiDB v5.3 中文手册
MaxMessageBytes 的默认值,由 64 MB 减小为 1 MB,以修复消息过大 会被 Kafka Broker 拒收的问题 #3104 * 减少同步链路中的内存占用 #2553#3037 #2726 * 优化监控项和告警规则,提升了同步链路、内存 GC、存量数据扫描过程的可观测性 #2735 #1606 #3000 #2985 #2156 * 当同步任务状态正常时,不再显示历史错误信息,避免误导用户 System,System 对应的实 际时区在 TiDB 集群 bootstrap 初始化时设置。具体逻辑如下: • 优先使用 TZ 环境变量 • 如果失败,则从 /etc/localtime 的实际软链地址提取。 • 如果上面两种都失败则使用 UTC 作为系统时区。 在运行过程中可以修改全局时区: SET GLOBAL time_zone = timezone; TiDB 还可以通过设置 session 会触发所有诊断规则对系统进行诊断,并在结果中展示系统中的 故障或风险。 • 诊断汇总表information_schema.inspection_summary 用于对特定链路或模块的监控进行汇总,用户可 以根据整个模块或链路的上下文来排查定位问题。 315 8.4 定位消耗系统资源多的查询 TiDB 会将执行时间超过tidb_expensive_query_time_threshold 限制(默认值为0 码力 | 2374 页 | 49.52 MB | 1 年前32. ClickHouse MergeTree原理解析-朱凯
l 企业大数据及商业智能 l 企业云服务 l 智能机器人应用 l 集团IT治理 l …… l 能源产业链 l 区域能源管理 l 能源大数据 l 购售电平台 l …… l 智慧组织 l 智慧城市 l 智慧产业 l …… EDT 企业级大数据平台 BAS区块链企业应用服务平台 ECP 企 业 云 平 台 服务(咨询、实施、运维、定制开发、系统集成……) 面向 集团企业0 码力 | 35 页 | 13.25 MB | 1 年前3TiDB v6.1 中文手册
DC 部署。 本文在创建测试集群时,已经启动了一个 TiCDC 节点,因此可以直接进行 changefeed 的配置。 2. 创建同步任务。 在上游集群中,执行以下命令创建从上游到下游集群的同步链路: tiup cdc cli changefeed create --pd=http://172.16.6.122:2379 --sink-uri="mysql://root:@172 �→ .16 +-------------------------+ 1 row in set (0.00 sec) ``` 6.3.8.4 第 4 步:平滑切换业务 通过 TiCDC 创建上下游的同步链路后,原集群的写入数据会以非常低的延迟同步到新集群,此时可以逐步将 读流量迁移到新集群了。观察一段时间,如果新集群表现稳定,就可以将写流量接入新集群,步骤如下: 1. 停止上游集群的写业务。确认上游 DC 部署。 本文在创建测试集群时,已经启动了一个 TiCDC 节点,因此可以直接进行 changefeed 的配置。 2. 创建同步任务。 在上游集群中,执行以下命令创建从上游到下游集群的同步链路: tiup ctl:cdc changefeed create --pd=http://127.0.0.1:2379 --sink-uri=" �→ mysql://root:@127 0 码力 | 3572 页 | 84.36 MB | 1 年前3TiDB v7.1 中文手册
JSON_OVERLAPS() 的检索条件可以利用该多值索引进行过滤,从而减少大量的 I/O 消 耗,提升执行速度。 在 v7.1.0 中,TiDB 多值索引成为正式功能 (GA),支持更完整的数据类型,并与 TiDB 的工具链兼容。你可 以在生产环境利用多值索引来加速对 JSON 数组的检索操作。 更多信息,请参考用户文档。 • 完善 Hash 分区表和 Key 分区表的分区管理功能 #42728 @mjonss 在 DC 部署。 本文在创建测试集群时,已经启动了一个 TiCDC 节点,因此可以直接进行 changefeed 的配置。 2. 创建同步任务。 在上游集群中,执行以下命令创建从上游到下游集群的同步链路: tiup cdc cli changefeed create --server=http://172.16.6.122:8300 --sink-uri="mysql://root: �→ @172 +-------------------------+ 1 row in set (0.00 sec) ``` 6.4.9.4 第 4 步:平滑切换业务 通过 TiCDC 创建上下游的同步链路后,原集群的写入数据会以非常低的延迟同步到新集群,此时可以逐步将 读流量迁移到新集群了。观察一段时间,如果新集群表现稳定,就可以将写流量接入新集群,步骤如下: 1. 停止上游集群的写业务。确认上游0 码力 | 4369 页 | 98.92 MB | 1 年前3TiDB v6.5 中文手册
DC 部署。 本文在创建测试集群时,已经启动了一个 TiCDC 节点,因此可以直接进行 changefeed 的配置。 2. 创建同步任务。 在上游集群中,执行以下命令创建从上游到下游集群的同步链路: tiup cdc cli changefeed create --server=http://172.16.6.122:8300 --sink-uri="mysql://root: �→ @172 +-------------------------+ 1 row in set (0.00 sec) ``` 6.3.9.4 第 4 步:平滑切换业务 通过 TiCDC 创建上下游的同步链路后,原集群的写入数据会以非常低的延迟同步到新集群,此时可以逐步将 读流量迁移到新集群了。观察一段时间,如果新集群表现稳定,就可以将写流量接入新集群,步骤如下: 1. 停止上游集群的写业务。确认上游 DC 部署。 本文在创建测试集群时,已经启动了一个 TiCDC 节点,因此可以直接进行 changefeed 的配置。 2. 创建同步任务。 在上游集群中,执行以下命令创建从上游到下游集群的同步链路: tiup ctl:vcdc changefeed create --server=http://127.0.0.1:8300 --sink-uri �→ ="mysql://root:@127 0 码力 | 4049 页 | 94.00 MB | 1 年前3TiDB v7.6 中文手册
配置文件 配置项 修改类型 描述 TiDB Lightning block- �→ size 新增 控制物理 导入模式 (backend=' �→ local') 中本地文 件排序的 I/O 区块大 小。默认 值为 16KiB。当 IOPS 成为 瓶颈时, 可以调大 该参数的 值以缓解 磁盘 IOPS, 从而提升 数据导入 性能。 BR -- �→ granularity �→ 新增 Lightning * 支持配置多个 PD 地址以增强稳定性 #49515 @mittalrishabh * 支持通过配置参数 block-size 来控制 TiDB Lightning 本地文件排序的 I/O 区块大小,提升数据导 入性能 #45037 @mittalrishabh 51 2.2.6 错误修复 • TiDB – 修 复 TiDB panic 并 报 错 invalid memory address DC 部署。 本文在创建测试集群时,已经启动了一个 TiCDC 节点,因此可以直接进行 changefeed 的配置。 2. 创建同步任务。 在上游集群中,执行以下命令创建从上游到下游集群的同步链路: tiup cdc cli changefeed create --server=http://172.16.6.122:8300 --sink-uri="mysql://root: �→ @1720 码力 | 4666 页 | 101.24 MB | 1 年前3
共 56 条
- 1
- 2
- 3
- 4
- 5
- 6