DBMS_COMPRESSION
パッケージは、アプリケーションの正しい圧縮レベルを簡単に選択できるインタフェースを提供します。
関連項目:
|
この章では、次の項目について説明します。
概要
セキュリティ・モデル
定数
DBMS_COMPRESSION
パッケージは、データベース環境内で圧縮に関連する情報を収集します。これには、パーティション化された表およびパーティション化されていない表について圧縮率を推測し、以前に圧縮された表に関する行レベルの圧縮情報を収集するツールが含まれます。これによって、圧縮に関連した決定を行うための適切な情報が得られます。
DBMS_COMPRESSION
パッケージでは、表36-1「DBMS_COMPRESSIONの定数 - 圧縮タイプ」に示す定数が使用されます。
表36-1 DBMS_COMPRESSIONの定数 - 圧縮タイプ
定数 | タイプ | 値 | 説明 |
---|---|---|---|
|
|
|
圧縮なし |
|
|
|
詳細圧縮レベル |
|
|
|
問合せ操作のための高圧縮レベル |
|
|
|
問合せ操作のための低圧縮レベル |
|
|
|
アーカイブ操作のための高圧縮レベル |
|
|
|
アーカイブ操作のための低圧縮レベル |
|
|
|
圧縮される行 |
|
|
|
LOB操作のための高圧縮レベル |
|
|
|
LOB操作のための中圧縮レベル |
|
|
|
LOB操作のための低圧縮レベル |
|
|
|
索引のための高圧縮レベル |
|
|
|
索引のための低圧縮レベル |
|
|
|
LOB圧縮率が見積られるオブジェクトの必要最低限のLOB数 |
|
|
|
基本圧縮レベル |
|
|
|
LOB圧縮率の計算に使用されるLOBの最大数 |
|
|
|
インメモリー圧縮なし |
|
|
|
DMLのためのインメモリー圧縮レベル |
|
|
|
問合せパフォーマンスのために最適化されたインメモリー圧縮レベル |
|
|
|
問合せパフォーマンスおよび領域の節約に対して最適化されたインメモリー圧縮レベル |
|
|
|
容量を最適化するインメモリー低圧縮レベル |
|
|
|
容量を最適化するインメモリー高圧縮レベル |
|
|
|
HCC比が見積もられるオブジェクトの必要最低限の行数 |
|
|
|
オブジェクトのすべての行を使用してHCC比が見積もられたことを示します。 |
|
|
|
圧縮率を見積もるオブジェクトをタイプ表として識別します。 |
|
|
2 |
圧縮率が見積もられるオブジェクトをタイプ索引として識別します。 |
注意: ハイブリッド列圧縮は特定のOracleストレージ・システムの機能です。詳細は、『Oracle Database概要』を参照してください。 |
DBMS_COMPRESSION
パッケージでは、レコード・
タイプと表
タイプを定義します。
このプロシージャは、表の圧縮比を分析し、表の圧縮率に関する情報を提供します。ユーザーは様々なパラメータを入力して、異なる圧縮タイプを選択的に分析できます。
構文
次のようにオブジェクト(表または索引。デフォルトは表)の圧縮率を取得します。
DBMS_COMPRESSION.GET_COMPRESSION_RATIO ( scratchtbsname IN VARCHAR2, ownname IN VARCHAR2, objname IN VARCHAR2, subobjname IN VARCHAR2, comptype IN NUMBER, blkcnt_cmp OUT PLS_INTEGER, blkcnt_uncmp OUT PLS_INTEGER, row_cmp OUT PLS_INTEGER, row_uncmp OUT PLS_INTEGER, cmp_ratio OUT NUMBER, comptype_str OUT VARCHAR2, subset_numrows IN NUMBER DEFAULT COMP_RATIO_MINROWS, objtype IN PLS_INTEGER DEFAULT OBJTYPE_TABLE);
次のように、LOBの圧縮率を取得します。
DBMS_COMPRESSION.GET_COMPRESSION_RATIO ( scratchtbsname IN VARCHAR2, tabowner IN VARCHAR2, tabname IN VARCHAR2, lobname IN VARCHAR2, partname IN VARCHAR2, comptype IN NUMBER, blkcnt_cmp OUT PLS_INTEGER, blkcnt_uncmp OUT PLS_INTEGER, lobcnt OUT PLS_INTEGER, cmp_ratio OUT NUMBER, comptype_str OUT VARCHAR2, subset_numrows IN number DEFAULT COMP_RATIO_LOB_MAXROWS);
表のすべての索引の圧縮率を取得します。圧縮率はコレクションとして戻されます。
DBMS_COMPRESSION.GET_COMPRESSION_RATIO ( scratchtbsname IN VARCHAR2, ownname IN VARCHAR2, tabname IN VARCHAR2, comptype IN NUMBER, index_cr OUT compRecList, comptype_str OUT VARCHAR2, subset_numrows IN NUMBER DEFAULT COMP_RATIO_INDEX_MINROWS);
パラメータ
表36-4 GET_COMPRESSION_RATIOプロシージャのパラメータ
パラメータ | 説明 |
---|---|
|
分析に使用できる一時スクラッチ表領域。 |
|
分析する表のスキーマ。 |
|
分析する表の名前。 |
|
オブジェクト名。 |
|
オブジェクトのパーティションまたはサブパーティションの名前。 |
|
分析を実行する対象の圧縮タイプ。 |
|
表の圧縮されたサンプルに使用されるブロック数。 |
|
表の圧縮解除されたサンプルに使用されるブロック数。 |
|
表の圧縮されたサンプルにあるブロック内の行数。 |
|
表の圧縮解除されたサンプルにあるブロック内の行数。 |
|
圧縮比、 |
|
圧縮タイプを説明する文字列。 |
|
圧縮比を見積もるためにサンプリングされた行数。 |
|
オブジェクトのタイプ。このパッケージに定義されているオブジェクト型を示すには定数である必要があります。 |
|
LOB列名 |
|
パーティション化された表の場合は、関連したパーティション名。 |
|
圧縮比を見積もるために実際にサンプリングされたLOBの数。 |
|
索引のリストおよび見積り済の圧縮率。 |