0%

Abstract

转载:performance_schema

performance schema 是一个存储引擎, 可以提供对mysql 所有指标的监控, 是一套非常详细而复杂的监控系统, 不同的指标,使用了不同的接口, 另外有几个特点:

  1. 它是运行时态, 因此是全内存存储, 重启后会丢失之前的数据
  2. 为了减少对运行时态的影响, 绝大部分资源都是提前申请好, 在performance_schema 初始化的时候,已经申请好了。涉及到2块内存, 一个是class 配置信息, 一个pfs state
  3. 不能增加sql 种类和语法

本文主要分 3块:

  1. 初始化
  2. 基本数据结构
  3. 使用过程

初始化

分为几个步骤

  1. 准备pfs 内部系统的内存监控的类
  2. 准备好pfs 配置的内存, pfs 配置主要用于设置pfs_xx_class
  3. 初始化pfs -- 初始化的核心操作, 最主要的核心操作是准备好PFS需要的资源,尤其是内存申请, class, pfs 监控项的container, 以mutex 为例: 申请param->m_mutex_class_sizing 个PFS_mutex_class, 存储到PFS_mutex_class的mutex_class_array中, 另外会申请监控項的container 如global_mutex_container
  4. 设置好所有的service,
  5. 把所有的pfs 的key 注册到pfs 中, 方便后续使用
Read more »

Abstract

心血来潮,想测试一下阿里云的essd 和阿里云的本地ssd 性能, 不巧的是阿里云ecs 的存储, 有几种类型, essd, ssd 云盘, 高效云盘 和本地盘nvme 盘 最终测试下来确实nvme 盘的性能最好。

测试工具: 本文用sysbench 进行测试, 以前读书的时候使用过iometer 进行测试, sysbench 测试参数更多, 对iops 的测试效果更丰富, iometer 偏重吞吐量的测试。

Read more »

Abstract

把过去的写的一篇笔记分享一下, 数据库最常用的测试三套件, sysbench -- oltp 测试, tpch -- olap 测试, tpcc -- 事务性能测试。 本文手把手 一步一步 run tpcc

整个过程, 分为

Abstract

把过去的写的一篇笔记分享一下, 数据库最常用的测试三套件, sysbench -- oltp 测试, tpch -- olap 测试, tpcc -- 事务性能测试。 本文手把手 一步一步 run sysbench

整个过程, 分为 * 介绍 * 准备工作 * 编译 * 测试 * 疑难杂症

Read more »

Abstract

把过去的写的一篇笔记分享一下, 数据库最常用的测试三套件, sysbench -- oltp 测试, tpch -- olap 测试, tpcc -- 事务性能测试。 本文手把手 一步一步 run TPCH, 即使从来没有跑过数据库的,也可以直接上手运行TPCH, 本文以运行TPCH on MySQL, 如果读者想要运行tpch 到postgres 或者其他的数据, 可以先参考本博文,然后基于本博文,再到github上搜索相应数据库的TPCH 库 即可。

整个过程, 分为 * 介绍 * 编译 * 数据生成 * 数据加载 * 性能测试 * 表结构介绍

Read more »

这篇文章介绍的非常好, 所以给大家推荐一下 【转载】https://blog.csdn.net/n88Lpo

Abstract

排序(filesort)作为DBA绕不开的话题,也经常有朋友讨论它,比如常见的问题如下: * 排序的时候,用于排序的数据会不会如Innodb一样压缩空字符存储,比如varchar(30),我只是存储了1个字符是否会压缩,还是按照30个字符计算? * max_length_for_sort_data/max_sort_length 到底是什么含义? * original filesort algorithm(回表排序) 和 modified filesort algorithm(不回表排序) 的根本区别是什么? * 为什么使用到排序的时候慢查询中的Rows_examined会更大,计算方式到底是什么样的? 在MySQL通常有如下算法来完成排序: * 内存排序(优先队列 order by limit 返回少量行常用,提高排序效率,但是注意order by limit n,m 如果n过大可能会涉及到排序算法的切换) * 内存排序(快速排序) * 外部排序(归并排序) 但是由于能力有限本文不解释这些算法,并且本文不考虑优先队列算法的分支逻辑,只以快速排序和归并排序作为基础进行流程剖析。

我们在执行计划中如果出现filesort字样通常代表使用到了排序,但是执行计划中看不出来下面问题: * 是否使用了临时文件。 * 是否使用了优先队列。 * 是original filesort algorithm(回表排序)还是modified filesort algorithm(不回表排序)。 如何查看将在后面进行描述。本文还会给出大量的排序接口供敢兴趣的朋友使用,也给自己留下笔记。

Read more »

Abstract

【转载】http://www.manongjc.com/detail/17-ssuthexbuzbjmlb.html 本文章向大家介绍Mysql聚簇索引和非聚簇索引,主要包括Mysql聚簇索引和非聚簇索引使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

基本介绍

聚簇索引并不是一种单独的索引类型,而是一种数据存储方式,具体的细节依赖于实现方式,InnoDB的聚簇索引实际上在同一个结构中保存了B+Tree索引和数据行。

当表中有聚簇索引时,它的数据实际上存储在索引的叶子页中(叶子页中包含了行的全部数据)。而没有聚簇索引时B+Tree叶子页存放的是指向数据的指针。(页是mysql存储引擎最小的存储单元,InnoDB每个页默认大小为16k)可以理解为 有聚簇索引时,数据和对应的叶子页在同一页中,没有聚簇索引时,叶子页和对应的数据不在同一页中。

InnoDB存储引擎通过主键聚集数据(聚簇索引),如果没有定义主键,InnoDB会选择一个唯一的非空索引代替。如果没有唯一索引,InnoDB会隐式定义一个主键来作为聚簇索引。InnoDB 只聚集在同一个页面中的记录。包含相邻健值的页面可能相距甚远。

Read more »

题外话

今年年初, 买书的时候,无意中看到《华为崛起》, 介绍的挺有意思的, 于是买了一本看看, 买了很久但一直没有看, 拖了很久, 终于看完了, 忍不住写点总结吧, 免得左边耳朵进,右边耳朵出。 华为从一家这么小的公司,最后成长成为差不多中国最大的民营企业, 而且很多年前, 营收和研发投入就是互联网三巨头bat 的总和, 绝对值得去学习和研究一下(现在互联网叫bat, 其实叫hat 更合适)。 这本书讲了很多华为成长过程中,发生的一些事和决策,可以从中思考一下,为什么华为成功了,而巨大中华中,其他的几乎没有多少声音了。 另外,绝对要吐槽一下作者, 全文无处不在的拍马屁, 有的地方,简直要吐了。这本书组织管理介绍比较浅, 很多组织管理的思考充斥着对任老板和管理层的拍马屁。

创业的朋友,推荐读一下这本书, 带着问题 “为什么华为能成功”? 读下去,相信会有很多收获。 而我没有什么体感,只能站在第三者的角度去看, 所以聊的深度比较浅, 大家就当博君一笑。

总结

华为大概分了几个阶段, 每一次都是破茧成蝶,突破天花板 1. 创业之战 2. 成长之战 3. 生存之战 4. 大象狂奔

Read more »