TiDB仪表板:为分布式数据库更方便地解决

2020-05-28 史文轩、张明、陈爽 产品

作者:文轩施明张陈爽(PingCAP的软件工程师)

杂种:佳林陈;编辑:汤姆德湾

疑难解答分布式数据库

它具有挑战性,因为有关系统的信息分散在不同的机器上解决分布式数据库中的问题。

蒂德是一个开源的分布式SQL数据库,支持混合交易/分析处理(HTAP)的工作负荷。4.0版本之前,可能难以有效地解决TiDB的系统问题。要诊断了解TiDB的基本架构需要TiDB集群的问题,即使是经验丰富的数据库管理员(DBA),熟悉数千TiDB的监测指标和积累经验的现场,以确保当他们遇到类似的问题下一次,他们可能更迅速地解决这些问题。

但这一切即将改变。作为我们的以前的帖子经过讨论,TiDB 4.0引入了TiDB仪表板,图形界面与各种内置,让你轻松地诊断小部件,监控和管理您的集群。在一个单一的界面,您可以检查一个分布式集群的运行状态和管理集群,其中包括:

  • 快速查找集群热点
  • 分析SQL语句执行性能
  • 查看慢查询
  • 集群生成诊断报告
  • 搜索和导出日志
  • 实例剖析

在这篇文章中,我们将带您通过仪表盘的主要部件:主要展台,SQL语句分析,慢查询观看,群集诊断日志搜索和实例分析。如果你是一个数据库管理员或数据库开发人员,我们希望你能运用这些知识,以自己的工作。例如,如果你是一名开发人员,你可以采取TiDB和TiDB仪表板为您自己的应用程序,甚至设计了一个类似的工具来解决您的系统。

tidb仪表板

tidb仪表板

重点展示台

和我们一样以前的帖子如上所述,Key Visualizer是一个可视化诊断小部件,可让您观察TiDB集群随时间的读写量,并深入了解应用程序。它提供应用程序状态的图形表示。如果您担心数据隐私,请注意为Key Visualizer供电的数据不包含有关应用程序的机密信息。

诊断性能问题

重点展示台

有关更多详细信息,请参阅文档这里

SQL语句分析

对于SQL语句性能问题,TiDB Dashboard提供了SQL语句分析小部件来监视SQL语句。仅参数不同的语句被视为同一类型。TiDB Dashboard显示每种类型SQL语句的信息,例如:

  • 总执行时间
  • 平均延迟执行
  • 执行数
  • 消耗的平均内存资源

有了这些信息,你可以分析哪些类型的SQL语句要花很长时间来执行和消耗太多内存,从而发现性能问题。

SQL语句分析

SQL语句分析

慢查询观看

TiDB仪表板可列出集群中的慢查询。它显示每个查询的SQL语句,它的执行结束时间,查询延迟和最大内存使用量。

慢查询观看

慢查询观看

群集诊断

群集诊断窗口小部件,您可以诊断指定时间范围内群集问题和总结的诊断结果和集群相关的负载监测信息到一个诊断报告。

诊断报告是一个网页表单。从浏览器下载后,可以脱机查看。如果选择两个时间范围进行比较,则可以获得关于不同时期集群问题的比较报告。

群集诊断

群集诊断报告

TiDB控制板基于一系列有关配置,SQL执行时间,监控信息,和硬件条件预设的规则簇的诊断报告。这个小工具尚处于初期阶段,我们仍在改进它使用的规则。我们希望它能够成长为一个强大的助手数据库管理员,这样,即使没有经验的DBA可以快速找到常见集群问题的原因。

日志搜索小工具可以搜索日志在集群中的导出日志所有情况下,预览搜索结果,和。

之前TiDB 4.0,搜索日志,你​​必须使用安全外壳(SSH)协议连接到每个远程服务器,但现在你只需要点击几下。

搜索和导出日志

搜索和导出日志

实例分析

例如谱分析,您可以收集每个TiDB,TiKV,并放置驱动器(PD)实例内部分析数据,而无需重新启动实例。

可以显示分析数据作为火焰图表或有向非循环图。这些曲线图形象化各种内部操作过程中分析数据采集周期和操作执行时间在此期间的比例的实例执行。这样一来,就可以迅速了解主CPU资源的实例消耗。

实例分析

实例分析

例如,该图显示了TiDB实例中的每个函数的执行时间:

在TiDB功能的执行时间

在TiDB功能的执行时间

下面的火焰图显示了TiKV实例中的CPU使用情况。它直观地显示了在分析数据收集期间,进程花费在各种内部函数上的时间比例。您可以更好地理解实例正在做什么。

在TiKV CPU使用率

在TiKV CPU使用率

试用TiDB仪表板

TiDB仪表板被直接内置到TiDB 4.0群集的PD组件,因此您无需部署任何额外的东西。如果您TiDB集群版4.0.0-RC.1.或更高版本,你可以给TiDB仪表盘一试。

和我们一样以前的帖子所描述的,TiDB 4.0引入醉酒,一个组件管理器,可以简化安装和配置TiD​​B簇分成几个简单的命令。你可以使用TiUP快速设置TiDB 4.0群集在本地计算机上,然后:

  1. 使用TiUP启动本地的Mac或Linux机器上测试集群的nightly版本:

    tiup操场夜间--monitor
  2. 访问http://127.0.0.1:2379/dashboard尝试TiDB仪表盘。

欢迎您加入我们的社会各界对斯莱克和您的宝贵意见。

故障排除

准备好开始与TiDB?