博客/社区

如何可视化数据,真正重要的业务与Grafana和MySQL

2019年4月25日3分钟

所以你有一个Grafana仪表板,显示0.01%的失败,整个公司的延迟都下降了。

但你老板的老板说的不是鼓励,而是废话少说。这对我们的业务到底意味着什么?的首席执行官彼得·扎伊采夫说Percona该公司为MySQL、Mariabob彩票中奖计划DB、MongoDB、Postgres等开源数据库提供支持、管理服务、顾问培训和定制工程等解决方案。

GrafanaCon 2019在洛杉矶,扎伊采夫显示与会者如何使用Percona的监控和管理产品来“可视化对业务真正重要的事情”,该产品集成了Grafana来分析数据库性能并提供数据库监控的解决方案。

通过使用Grafana和MySQL, Percona建立了自定义的仪表板来展示指标,例如基于客户数据库中已有的相同信息,一分钟内完成了多少订单或24小时内赚了多少钱。扎伊采夫说:“这是我们为许多客户做的事情,他们很多人都很喜欢。”

除了演示两个数据集(一个是电子商务示例,另一个是美国历史航空公司数据)之外,Zaitsev还概述了在开始之前在MySQL上进行优化设置的三个技巧。

为了更加安全,请使用只读用户。

扎伊采夫警告说:“由于错误或恶意,坏事可能会发生。”

设置max_execution_time变量以避免大量的长查询。

随着用户使用不同的变量,并将时间间隔扩展到不是一天,而是10年,查询可能会变得非常缓慢。当用户意识到运行查询需要数小时时,他们可能会转到另一个页面;但是,查询将继续运行。

扎伊采夫说:“这意味着,你很容易就能让你的服务器被数百条糟糕的查询完全饱和。”

Zaitsev建议使用max_execution_time选项作为解决方案,该选项在MySQL 5.7或更高版本中可用。该功能允许用户设置一个时间间隔,在此之后系统将自动终止正在进行的查询。

考虑使用MySQL副本进行查询。

Zaitsev说:“如果你使用复制来查看一些繁重的查询,那就从专用slave上运行。”“因为,特别是如果有复杂的仪表板,所有这些面板都是并行运行查询的,如果同时运行10到20个繁重的查询,它们会影响应用程序的实时部分。”

观看所有扎伊采夫的现场演示如下:

更多信息来自GrafanaCon 2019,查看所有关于YouTube