10bet网址
MySQL 5.6リファレンスマニュアル
下载本手册
PDF(美国高级主任)- 26.8 mb
PDF (A4)- 26.8 mb


14.7.1テ,ブル圧縮の概要

プロセッサおよびキャッシュメモリーは,ディスクストレージデバイスよりも速度が上昇しているため,多くのワークロードがディスクバウンドになります。デタ圧縮を使用すると,データベースのサイズが小さくなり,I / Oが削減され,スループットが改善されますが,CPU使用率が上昇するという少しの犠牲が伴います。圧縮は、頻繁に使用されるデータをメモリー内に保持するために十分な RAM が搭載されたシステム上で、読み取り負荷の高いアプリケーションを実行する際に、特に有効です。

ROW_FORMAT =压缩で作成されたInnoDBテブルでは,通常の16Kバトのデフォルトよりも小さいペジサズをディスク上で使用できます。ページが小さいほど,ディスクから読み取られるI / Oとディスクに書き込まれるI / Oが少なくなるため,固态硬盘デバesc escスを使用する際に,特に有効です。

ペジサズは,KEY_BLOCK_SIZEパラメ,タを使用して指定されます。ペジサズが異なる場合は、テーブルをシステムテ,ブルスペ,ス内でなく,独自の.ibdファ@ @ルに格納する必要があります。そのためには,innodb_file_per_tableオプションを有効にする必要があります。圧縮レベルは,KEY_BLOCK_SIZEの値に関係なく同じです。KEY_BLOCK_SIZEに小さい値を指定するほど,徐々にペ,ジが小さくなるというI/Oの利点が得られます。ただし,小さすぎる値を指定すると,各ページ内に複数の行を収容できるほど十分にデータ値を圧縮できない場合に,ページを再編成するための追加のオーバーヘッドが発生します。そのKEY_BLOCK_SIZEをテブルに指定できるのかにいて,ハド制限が課されています。小さすぎる値を指定すると,创建表またはALTER TABLEステ,トメントが失敗します。

バッファ,プ,ルには,圧縮済みデ,タがKEY_BLOCK_SIZEの値に基づいたペジサズの小さなペジで保持されます。カラム値を抽出または更新すると,MySQLのバッファープールには,非圧縮データを含む16 kバイトのページも作成されます。バッファ,プ,ル内では,非圧縮ペ,ジへの更新が同等の圧縮済みペ,ジに再度書き込まれます。圧縮済みページと非圧縮ページの両方の追加データが収容されるように、バッファーページのサイズを変更する必要がある場合もあります。ただし、非圧縮のページは、領域が必要になるとバッファープールから解放され,次のアクセス時に再度圧縮が解除されます。