content_image/761721.jpg content_image/761734.jpg
## How Page Compression Works 

•OEL 7.0 kernel version 3.8.13 or higher 

•SLE11 kernel version 3.0-x 

•SLE12 kernel version 3.12-x 

•OES11 kernel version 3.0-x 

•Ubuntu 14.0.4 LTS kernel version 3.13 or higher 

•Ubuntu 12.0.4 LTS kernel version 3.2 or higher 

•Debian 7 kernel version 3.2 or higher 

<img src='content_image/761721.jpg'>

## Note 

All of the available file systems for a given Linux distribution may not support hole punching. 

When a page is written, it is compressed using the specified compression algorithm. The compressed data is written to disk, where the hole punching mechanism releases empty blocks from the end of the page. If compression fails, data is written out as-is. 

## Hole Punch Size on Linux 

On Linux systems, the file system block size is the unit size used for hole punching. Therefore, page compression only works if page data can be compressed to a size that is less than or equal to the InnoDB page size minus the file system block size. For example, if innodb_page_size=16K  and the file system block size is 4K, page data must compress to less than or equal to 12K to make hole punching possible. 

## Hole Punch Size on Windows 

On Windows systems, the underlying infrastructure for sparse files is based on NTFS compression. Hole punching size is the NTFS compression unit, which is 16 times the NTFS cluster size. Cluster sizes and their compression units are shown in the following table: 

<img src='content_image/761734.jpg'>

Page compression on Windows systems only works if page data can be compressed to a size that is less than or equal to the InnoDB  page size minus the compression unit size. 

The default NTFS cluster size is 4KB, for which the compression unit size is 64KB. This means that page compression has no benefit for an out-of-the box Windows NTFS configuration, as the maximum innodb_page_size  is also 64KB. 

For page compression to work on Windows, the file system must be created with a cluster size smaller than 4K, and the innodb_page_size  must be at least twice the size of the compression unit. For 

