数据库性能调优方案.pdfVIP

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库性能调优方案 1 作为综合性多业务的“互联网 + 生活服务”平台,美团点评对数据库的稳定运行有较高的要求,小概 率的性能抖动 (包括慢 SQL )都会造成一定的可用性损失。 本文将从过去几年遇到的一些性能问题中, 挑选了一个较为棘手的案例,探究端到端数据库性能问题的解决思路,为 DBA 同学在解决类似问题 时提供一种参考。 问题描述 在一段时间内不断有开发同学反馈,线上应用程序获取数据超时,通过 CAT 监控系统发现这些应用 的 SQL 99line 都比较高,这在一定程度上影响了对应业务的 QoS ,比如达不到 99.99% 的业务可用 性 (超时被定义为不可用 ) 。这些问题出现在很多业务场景中,是一个普遍性问题。 通过 CAT 监控系统、 SQL 样本、慢查询系统等进一步了解,发现这类 SQL 有如下特征 : 基本上都是以主键或唯一键为条件的简单查询,查询后的结果集及扫描的行数都比较小; 查询的表的数据总量也很小,最小的表甚至只有几千行; 时间达到了几百 ms ,甚至 1s; 数据库的 slow log 里没有记录这类 SQL 。 下图为 CAT 相关监控数据的样本,以 xxx-service 这个 service 为例: 99line 的监控数据,有很多 SQL 的返回时间超过 100ms 以上。 2 SQL 的绝对数量在 2016 年 9 月 6 日当天为 :3788 。 具体到某个 SQL ,甚至达到了 929ms 。 3 FB_Coach 的表结构如下: 可看到最多 641 条记录,还有联合索引。 概要分析 要想定位到原因,必须通过排除法找到该 SQL 到底慢在哪个阶段,这样才能缩小范围。接下来我们 来分析慢 SQL 的花费时间组成。从下图可看出,时间主要由 3 部分组成: 4 App Server :发出 SQL 请求的时间,接收返回结果的时间 网络: SQL 请求包及查询结果在网络上花费的时间 MySQL Server :发出 SQL 到查询结果整个过程花费的时间 我们可以通过抓包工具获取每个阶段花费的时间,从而定位到底慢在哪个阶段。 问题解决思路迭代 思路 1 :确认哪个过程花费的时间最多 5 方法: 分别在 APP Server 与 MySQL Server 部署 TcpDump 抓包工具, 得到数据包在 4 个监测点的 “到达时间”。为了方便,把如下 4 个 Wireshark 分析结果(对 TcpDump 抓取日志分析)按 4 个 方位标注: APP Server 发出 SQL (左上) MySQL Server 收到 SQL (右上) MySQL Server 将查询发出(右下) APP Server 收到查询结果(左下) 从 数 据 可 以 准 确 的 看 出 时 间 主 要 花 费 在 MySQL 内 部 , 具 体 时 间 为

您可能关注的文档

文档评论(0)

午夜看球 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档