👌

【Silver DBA】表圧縮

2024/03/15に公開

表圧縮

表を圧縮することで
・使用するストレージ領域の削減
・使用するデータベースバッファキャッシュのメモリーサイズの削減
ができる。

基本表圧縮

・ダイレクトパスロード操作
・ALTER TABLE ... MOVE
・表のオンライン再定義
が圧縮可能。

データウェアハウス、意思決定支援システムなど
データが一括で投入されるタイプのシステムでの使用に適する。

Oracle Database Enterprise Edition が必要。

ROW STORE COMPRESS BASIC
ROW STORE COMPRESS
COMPRESS

高度な行圧縮

すべての操作でデータ圧縮が可能。
オンライントランザクション処理システムを含む、あらゆるシステムで適する。
有料のAdvanced Compression Optionが必要。

ROW STORE COMPRESS ADVANCED

表圧縮の仕組み

1ブロック内に格納される複数の行で同じ列値がある場合に、列値の記録を省略する。
圧縮処理の負荷は非常に小さい。
基本表圧縮、高度表圧縮ともに同じ仕組み。

表圧縮の方法

表圧縮をするには、対象の表に圧縮の設定を行う。
CREATE TABLEの際に圧縮を指定することができる。
ALTER TABLEでも設定することが可能だが、設定前のデータに対しては圧縮がされない。

// 基本表圧縮
CREATE TABLE テーブル名 ... ROW STORE COMPRESS BASIC;
CREATE TABLE テーブル名 ... ROW STORE COMPRESS;
CREATE TABLE テーブル名 ... COMPRESS;

// 高度な業圧縮
CREATE TABLE テーブル名 ... ROW STORE COMPRESS ADVANCED;

Discussion