有关压缩的InnoDB INFORMATION_SCHEMA表
InnoDBINFORMATION_SCHEMA关于压缩的表格有两对,可以深入了解压缩的整体效果:
INNODB_CMP并INNODB_CMP_RESET提供有关压缩操作数和执行压缩所花费时间的信息。INNODB_CMPMEM并INNODB_CMPMEM_RESET提供有关分配内存以进行压缩的方式的信息。
INNODB_CMP和INNODB_CMP_RESET
在INNODB_CMP与INNODB_CMP_RESET表提供有关与压缩表执行的操作,这被描述的状态信息 15.9节,“InnoDB的表和页压缩”。该PAGE_SIZE列报告压缩的页面大小。
这两个表具有相同的内容,但是从中读取将INNODB_CMP_RESET重置有关压缩和解压缩操作的统计信息。例如,如果您INNODB_CMP_RESET每60分钟存档一次输出,则会看到每个小时周期的统计信息。如果监视INNODB_CMP(确保从不读取INNODB_CMP_RESET)的输出,则会看到自InnoDB启动以来的累积统计信息。
有关表的定义,请参见“ INFORMATION_SCHEMA INNODB_CMP和INNODB_CMP_RESET表”。
INNODB_CMPMEM和INNODB_CMPMEM_RESET
在INNODB_CMPMEM与INNODB_CMPMEM_RESET表提供有关驻留在缓冲池中压缩页的状态信息。请参阅“ InnoDB表和页面压缩”以获取有关压缩表和缓冲池使用的更多信息。在INNODB_CMP和INNODB_CMP_RESET表格应提供关于压缩的更多有用的统计数据。
内部细节
InnoDB使用伙伴分配器系统来管理分配给大小从1KB到16KB的页面的内存。这里描述的两个表的每一行对应一个页面大小。
在INNODB_CMPMEM与INNODB_CMPMEM_RESET表的内容相同,但是从阅读INNODB_CMPMEM_RESET重置迁址操作的统计信息。例如,如果您每60分钟存档一次的输出INNODB_CMPMEM_RESET,它将显示每小时的统计信息。如果您从不读取INNODB_CMPMEM_RESET和监视它的输出INNODB_CMPMEM,它将显示自InnoDB启动以来的累积统计信息。
有关表的定义,请参见“ INFORMATION_SCHEMA INNODB_CMPMEM和INNODB_CMPMEM_RESET表”。
使用压缩信息架构表
示例15.1使用压缩信息模式表
以下是从包含压缩的表(参照数据库样本输出“InnoDB的表和页压缩”,INNODB_CMP,INNODB_CMP_PER_INDEX,和INNODB_CMPMEM)。
下表显示INFORMATION_SCHEMA.INNODB_CMP了轻负载下的内容。缓冲池包含的唯一压缩页面大小是8K。自重置统计信息以来,由于列COMPRESS_TIME和UNCOMPRESS_TIME为零,因此压缩或解压缩页面所花费的时间不到一秒钟。
| 页面大小 | 压缩操作 | 压缩操作确定 | 压缩时间 | 解压缩操作 | 解压时间 |
|---|---|---|---|---|---|
| 1024 | 0 | 0 | 0 | 0 | 0 |
| 2048 | 0 | 0 | 0 | 0 | 0 |
| 4096 | 0 | 0 | 0 | 0 | 0 |
| 8192 | 1048 | 921 | 0 | 61 | 0 |
| 16384 | 0 | 0 | 0 | 0 | 0 |
据此INNODB_CMPMEM,缓冲池中有6169个压缩的8KB页面。分配的唯一其他块大小是64个字节。最小的PAGE_SIZEin INNODB_CMPMEM用于那些缓冲池中不存在未压缩页面的压缩页面的块描述符。我们看到有5910个此类页面。间接地,我们看到259(6169-5910)压缩页面也以未压缩形式存在于缓冲池中。
下表显示INFORMATION_SCHEMA.INNODB_CMPMEM了轻负载下的内容。由于压缩页面的内存分配器碎片,某些内存无法使用SUM(PAGE_SIZE*PAGES_FREE)=6784。这是因为使用伙伴分配系统通过从较大的块(从主缓冲池分配的16K块开始)开始拆分较大的块来满足较小的内存分配请求。由于某些已分配的块已重定位(复制)以形成更大的相邻可用块,因此碎片化程度如此之低。SUM(PAGE_SIZE*RELOCATION_OPS)字节的这种复制消耗了不到一秒钟的时间(SUM(RELOCATION_TIME)=0)。
| 页面大小 | 使用的页面 | 免费页面 | 搬迁项目 | 搬迁时间 |
|---|---|---|---|---|
| 64 | 5910 | 0 | 2436 | 0 |
| 128 | 0 | 1个 | 0 | 0 |
| 256 | 0 | 0 | 0 | 0 |
| 512 | 0 | 1个 | 0 | 0 |
| 1024 | 0 | 0 | 0 | 0 |
| 2048 | 0 | 1个 | 0 | 0 |
| 4096 | 0 | 1个 | 0 | 0 |
| 8192 | 6169 | 0 | 5 | 0 |
| 16384 | 0 | 0 | 0 | 0 |
