MySQL 5.1 リファレンスマニュアル :: 13 ストレージエンジンとテーブルタイプ :: 13.4 MyISAM ストレージエンジン :: 13.4.3 MyISAM テーブルストレージフォーマット :: 13.4.3.3 圧縮テーブルの特徴
« 13.4.3.2 動的テーブルの特徴

13.4.4 MyISAM テーブルの問題点 »
Section Navigation      [Toggle]
  • 13.4.3 MyISAM テーブルストレージフォーマット
  • 13.4.3.1 静的な(固定長) テーブルの特徴
  • 13.4.3.2 動的テーブルの特徴
  • 13.4.3.3 圧縮テーブルの特徴

13.4.3.3. 圧縮テーブルの特徴

圧縮ストレージフォーマットはmyisampack ツールによって生成される読み取り専用のフォーマットです。圧縮テーブルは myisamchkを使って解凍する事ができます。

圧縮テーブルには次のような特徴があります。

  • 圧縮テーブルはごくわずかなディスク容量しか必要としません。そのおかげでディスクの使用を最小化する事ができるので、低速ディスク (CD-ROMなど)を利用する時に便利です。

  • それぞれの行が別々に圧縮されるので、アクセスオーバーヘッドがほとんどありません。行のヘッダーは、そのテーブルの中の一番大きな行に応じて、1から3バイトに固定されます。それぞれのカラムは違う方法で圧縮されます。それぞれのカラムは通常異なったハフマンツリーを持ちます。以下はいくつかの圧縮タイプの例です。

    • サフィックス空白の圧縮

    • プレフィックス空白の圧縮

    • 値0の数値は1ビットで格納されます。

    • 値の範囲が小さい整数カラムは、可能な限り小さな型を使って格納されます。例えば、BIGINT カラム (8バイト)の全ての値が-128 から 127 の範囲内にある場合は、このカラムを TINYINT カラム(1バイト)として格納する事ができます。

    • カラムの可能値が少ない場合は、データの型を ENUMに変換します。

    • 上記の圧縮を組み合わせて使用する事もできます。

  • 固定長または可変長の行を処理する事ができます。

注:  圧縮テーブルは読み取り専用なので、テーブルを更新したり、行を追加したりはできません。DDL (データ定義言語) 操作は有効です。例えば、テーブルをドロップする為に DROP を利用したり、空にする為に TRUNCATE を利用する事もできます。

Copyright © 1997, 2010, Oracle and/or its affiliates. All rights reserved. Legal Notices
Top / Previous / Next / Up / Table of Contents
© 2010, Oracle Corporation and/or its affiliates