TiDB亿级数据亚秒响应查询Dashboard使用

目录

  • 1 集群概况
    • 1.1 QPS
    • 1.1.1 延迟
    • 1.1.2 Top SQL 语句
    • 1.1.3 最近的慢查询
  • 2 集群信息
    • 2.1 实例列表
      • 2.1.1 表格列解释
      • 2.1.2 实例状态解释
    • 2.2 主机列表
      • 2.2.1 表格列解释
    • 2.3 SQL语句分析
      • 2.3.1 执行列表页
      • 2.3.2 执行详情页面
    • 2.4 慢查询
      • 2.4.1 慢查询列表页
      • 2.4.2 查看执行详情
    • 2.5 集群诊断页面
      • 2.5.1 生成诊断报告


1 集群概况

TiDB亿级数据亚秒响应查询Dashboard使用_第1张图片

TiDB Dashboard 是 TiDB 自 4.0 版本起提供的图形化界面,可用于监控及诊断 TiDB 集群。TiDB Dashboard 内置于 TiDB 的 PD 组件中,无需独立部署。

查看集群整体 QPS 数值、执行耗时、消耗资源最多的几类 SQL 语句等概况信息。

该页面显示了整个集群的概况,包含以下信息:

  • 整个集群的 QPS
  • 整个集群的查询延迟
  • 最近一段时间内累计耗时最多的若干 SQL 语句
  • 最近一段时间内运行时间超过一定阈值的慢查询
  • 各个实例的节点数和状态
  • 监控及告警信息

1.1 QPS

该区域显示最近一小时整个集群的每秒成功和失败查询数量

TiDB亿级数据亚秒响应查询Dashboard使用_第2张图片

注意:该功能仅在部署了 Prometheus 监控组件的集群上可用,未部署监控组件的情况下会显示为失败。

1.1.1 延迟

该区域显示最近一小时整个集群中 99.9%、99% 和 90% 查询的延迟:

TiDB亿级数据亚秒响应查询Dashboard使用_第3张图片

注意:该功能仅在部署了 Prometheus 监控组件的集群上可用,未部署监控组件的情况下会显示为失败。

1.1.2 Top SQL 语句

该区域显示最近一段时间内整个群集中累计耗时最长的 10 类 SQL 语句。查询参数不一样但结构一样的 SQL 会归为同一类 SQL 语句,在同一行中显示

TiDB亿级数据亚秒响应查询Dashboard使用_第4张图片

注意:该功能仅在开启了 SQL 语句分析功能的集群上可用。

1.1.3 最近的慢查询

该区域默认显示最近 30 分钟内整个集群中最新的 10 条慢查询

TiDB亿级数据亚秒响应查询Dashboard使用_第5张图片

默认情况下运行时间超过 300ms 的SQL 查询即会被计为慢查询并显示在该表格中。

2 集群信息

该页面上允许用户查看整个集群中 TiDB、TiKV、PD、TiFlash 组件的运行状态及其所在主机的运行状态。

2.1 实例列表

实例列表列出了该集群中 TiDB、TiKV、PD 和 TiFlash 组件所有实例的概况信息。

TiDB亿级数据亚秒响应查询Dashboard使用_第6张图片

2.1.1 表格列解释

表格包含以下列:

  • 地址:实例地址
  • 状态:实例的运行状态
  • 启动时间:实例的启动时间
  • 版本:实例版本号
  • 部署路径:实例二进制文件所在目录路径
  • Git 哈希值:实例二进制对应的 Git 哈希值

2.1.2 实例状态解释

实例的运行状态有:

  • 在线 (Up):实例正常运行。
  • 离线 (Down) 或无法访问 (Unreachable):实例未启动或对应主机存在网络问题。
  • 已缩容下线 (Tombstone):实例上的数据已被完整迁出并缩容完毕。仅 TiKV 或 TiFlash 实例存在该状态。
  • 下线中 (Offline):实例上的数据正在被迁出并缩容。仅 TiKV 或 TiFlash 实例存在该状态。
  • 未知 (Unknown):未知的实例运行状态。

2.2 主机列表

主机列表列出了该集群中 TiDB、TiKV、PD 和 TiFlash 组件所有实例对应主机的运行情况。

TiDB亿级数据亚秒响应查询Dashboard使用_第7张图片

2.2.1 表格列解释

表格包含以下列:

  • 地址:主机 IP 地址
  • CPU:主机 CPU 逻辑核心数
  • CPU 使用率:主机当前 1 秒的用户态和内核态 CPU 使用率
  • 物理内存:主机总计的物理内存大小
  • 内存使用率:主机当前内存使用率
  • 部署磁盘:主机上运行实例所在磁盘的文件系统和磁盘挂载路径
  • 磁盘使用率:主机上运行实例所在磁盘的空间使用率

2.3 SQL语句分析

该页面可以查看所有 SQL 语句在集群上执行情况,常用于分析总耗时或单次耗时执行耗时较长的 SQL 语句。

2.3.1 执行列表页

	在该页面中,结构一致的 SQL 查询(即使查询参数不一致)都会被归为同一个 SQL 语句,例如 `SELECT * FROM employee WHERE id IN (1, 2, 3)` 和 `select * from EMPLOYEE where ID in (4, 5)` 都属于同一 SQL 语句 `select * from employee where id in (...)`。

TiDB亿级数据亚秒响应查询Dashboard使用_第8张图片

2.3.2 执行详情页面

在列表中点击任意一行可以进入该 SQL 语句的详情页查看更详细的信息,这此信息包括三大部分:

  • SQL 语句概况:包括 SQL 模板,SQL 模板 ID,当前查看的时间范围,执行计划个数以及执行所在的数据库(下图区域 1)
  • 执行计划列表:如果该 SQL 语句有多个执行计划,则显示该列表,可以选择不同的执行计划,在列表下方会显示选中的执行计划详情;如果只有一个执行计划,则该列表不显示(下图区域 2)
  • 执行计划详情:显示选中的执行计划的详细信息,具体见下一小节(下图区域 3)

TiDB亿级数据亚秒响应查询Dashboard使用_第9张图片

2.4 慢查询

该页面上能检索和查看集群中所有慢查询。

	默认情况下,执行时间超过 300ms 的 SQL 查询就会被视为慢查询,被记录到[慢查询日志](https://docs.pingcap.com/zh/tidb/stable/identify-slow-queries)中,并可通过本功能对记录到的慢查询进行查询。可调整 [`tidb_slow_log_threshold`](https://docs.pingcap.com/zh/tidb/stable/system-variables#tidb_slow_log_threshold) SESSION 变量或 TiDB [`slow-threshold`](https://docs.pingcap.com/zh/tidb/stable/tidb-configuration-file#slow-threshold) 参数调整慢查询阈值。

	若关闭了慢查询日志,则本功能不可用。慢查询日志默认开启,可通过修改 TiDB 配置 [`enable-slow-log`](https://docs.pingcap.com/zh/tidb/stable/tidb-configuration-file#enable-slow-log) 开启或禁用。

2.4.1 慢查询列表页

可按时间范围、慢查询语句关联的数据库、SQL 关键字、SQL 类型、显示的慢查询语句数量等条件过滤,筛选慢查询句。如下所示,默认显示 30 分钟内最近 100 条慢查询。

TiDB亿级数据亚秒响应查询Dashboard使用_第10张图片

2.4.2 查看执行详情

在列表中点击任意一行可以显示该慢查询的详细执行信息,包含:

  • SQL:慢查询 SQL 文本(
  • 执行计划:慢查询的执行计划
  • 其他分类好的 SQL 执行信息

TiDB亿级数据亚秒响应查询Dashboard使用_第11张图片

点击展开 (Expand) 链接可以展开相应项的完整内容,点击复制 (Copy) 链接可以复制完整内容到剪贴板。

2.5 集群诊断页面

集群诊断是在指定的时间范围内,对集群可能存在的问题进行诊断,并将诊断结果和一些集群相关的负载监控信息汇总成一个诊断报告。诊断报告是网页形式,通过浏览器保存后可离线浏览和传阅。

2.5.1 生成诊断报告

如果想对一个时间范围内的集群进行诊断,查看集群的负载等情况,可以使用以下步骤来生成一段时间范围的诊断报告:

  1. 设置区间的开始时间
  2. 设置区间长度,例如 10 min 。
  3. 点击开始。

建议生成报告的时间范围在 1 min ~ 60 min 内,目前不建议生成超过 1 小时范围的报告。

TiDB亿级数据亚秒响应查询Dashboard使用_第12张图片

点击开始 (start) 后,会看到以下界面,生成进度 (progress) 是生成报告的进度条,生成报告完成后,点击查看报告 (View Full Report) 即可。

TiDB亿级数据亚秒响应查询Dashboard使用_第13张图片

你可能感兴趣的:(tidb,tidb,数据库,sql)