DB2 Version 10.1 for Linux, UNIX, and Windows

SNAPTAB_REORG 管理ビューおよび SNAP_GET_TAB_REORG 表関数 - 表再編成スナップショット情報の検索

SNAPTAB_REORG 管理ビューおよび SNAP_GET_TAB_REORG 表関数は、表再編成情報を戻します。 再編成された表がない場合は、0 行が戻されます。 データ・パーティション表が再編成されるとき、各データ・パーティションに対して 1 つのレコードが戻されます。 データ・パーティション表の特定の 1 つのデータ・パーティションだけが再編成される場合、そのパーティションのレコードだけが戻されます。
管理ビューまたは表関数のどちらを使用しているかによって、以下のいずれかのセクションを参照してください。

SNAPTAB_REORG 管理ビュー

この管理ビューでは、現在接続されているデータベースの表再編成スナップショット情報を検索できます。

SNAPTAB 管理ビューと共に使用すると、SNAPTAB_REORG 管理ビューは、GET SNAPSHOT FOR TABLES ON database-alias CLP コマンドと同等のデータを提供します。

スキーマは SYSIBMADM です。

戻される可能性のある情報の完全なリストは、表 1 を参照してください。

許可

このビューを使用するには、以下のいずれかの許可が必要です。
  • SNAPTAB_REORG 管理ビューに対する SELECT 特権
  • SNAPTAB_REORG 管理ビューに対する CONTROL 特権
  • DATAACCESS 権限
  • DBADM 権限
  • SQLADM 権限
この表関数を使用するには、以下のいずれかが必要です。
  • SNAP_GET_TAB_REORG 表関数に対する EXECUTE 特権
  • DATAACCESS 権限
  • DBADM 権限
  • SQLADM 権限
さらに、スナップショット・モニター・データにアクセスするには、以下のいずれかの権限も必要です。
  • SYSMON
  • SYSCTRL
  • SYSMAINT
  • SYSADM

デフォルトの PUBLIC 特権

制限のないデータベースでは、このビューが自動的に作成されると、SELECT 特権が PUBLIC に付与されます。

現在接続されているデータベース上のすべてのデータベース・メンバーでの再編成操作の詳細を選択します。
SELECT SUBSTR(TABNAME, 1, 15) AS TAB_NAME, SUBSTR(TABSCHEMA, 1, 15) 
   AS TAB_SCHEMA, REORG_PHASE, SUBSTR(REORG_TYPE, 1, 20) AS REORG_TYPE, 
   REORG_STATUS, REORG_COMPLETION, DBPARTITIONNUM 
   FROM SYSIBMADM.SNAPTAB_REORG ORDER BY DBPARTITIONNUM
以下はこの照会の出力例です。
TAB_NAME     TAB_SCHEMA     REORG_PHASE      ... 
--------...- ----------...- ---------------- ... 
EMPLOYEE     DBUSER         REPLACE          ... 
EMPLOYEE     DBUSER         REPLACE          ... 
EMPLOYEE     DBUSER         REPLACE          ... 
                                             ... 
3 record(s) selected.                            
この照会からの出力 (続き)。
... REORG_TYPE           REORG_STATUS REORG_COMPLETION DBPARTITIONNUM
... -------------------- ------------ ---------------- --------------
... RECLAIM+OFFLINE+ALLO COMPLETED    SUCCESS                       0
... RECLAIM+OFFLINE+ALLO COMPLETED    SUCCESS                       1
... RECLAIM+OFFLINE+ALLO COMPLETED    SUCCESS                       2
マルチディメンション・クラスタリング (MDC) 表または挿入時クラスタリング (ITC) 表からエクステントを再利用するための再編成操作に関するすべての情報を、SNAPTAB_REORG 管理ビューから選択します。
db2 -v "select * from sysibmadm.snaptab_reorg"

TABNAME  REORG_PHASE       REORG_MAX_PHASE   REORG_TYPE
-------- ----------------- ----------------- ---------------------------
T1       RELEASE           3                 RECLAIM_EXTENTS+ALLOW_WRITE

REORG_STATUS REORG_COMPLETION REORG_START                REORG_END
------------ ---------------- -------------------------- --------------------------
COMPLETED    SUCCESS          2008-09-24-14.35.30.734741 2008-09-24-14.35.31.460674

SNAP_GET_TAB_REORG 表関数

SNAP_GET_TAB_REORG 表関数は SNAPTAB_REORG 管理ビューと同じ情報を戻しますが、特定のデータベース・メンバー、すべてのデータベース・メンバーの集約、またはすべてのデータベース・メンバーのいずれかの特定のデータベースを対象とした情報を検索することができます。

SNAP_GET_TAB 表関数と共に使用すると、SNAP_GET_TAB_REORG 表関数は、GET SNAPSHOT FOR TABLES ON database-alias CLP コマンドと同等のデータを提供します。

戻される可能性のある情報の完全なリストは、表 1 を参照してください。

構文

構文図を読む構文図をスキップする
>>-SNAP_GET_TAB_REORG--(--dbname--+----------+--)--------------><
                                  '-, member-'      

スキーマは SYSPROC です。

表関数パラメーター

dbname
現在接続されているデータベースと同じインスタンス内の有効なデータベース名を指定する、タイプ VARCHAR(128) の入力引数。 "Indirect" または "Home" のディレクトリー項目タイプを持つデータベース名を指定します。 このディレクトリー項目タイプは、LIST DATABASE DIRECTORY コマンドで確認できます。 現在接続されているデータベースからのスナップショットを取得するには、NULL または空ストリングを指定します。
member
有効なデータベース・メンバー番号を指定する、タイプ INTEGER のオプションの入力引数。現在のデータベース・メンバーの場合は -1、すべてアクティブなデータベース・メンバーの集合の場合は -2 を指定します。dbnameNULL に設定せずに、memberNULL に設定すると、member は暗黙的に -1 に設定されます。この入力オプションを使用しない場合、つまり dbname のみを指定する場合、データはすべてのアクティブなデータベース・メンバーから戻されます。アクティブなデータベース・メンバーとは、アプリケーションによるデータベースへの接続およびデータベースの使用が可能なメンバーのことです。

dbnamemember の両方を NULL に設定すると、SNAP_WRITE_FILE プロシージャーにより作成されるファイルからのデータの読み取りが試行されます。このファイルはいつでも作成される可能性があるため、データは現行のものであるとは限らないことに注意してください。 対応するスナップショット API 要求タイプを持つファイルが存在しない場合、SNAP_GET_TAB_REORG 表関数は、現在接続中のデータベースおよびデータベース・メンバー番号のスナップショットを取得します。

許可

以下のいずれかの権限が必要です。
  • SNAP_GET_TAB_REORG 表関数に対する EXECUTE 特権
  • DATAACCESS 権限
さらに、スナップショット・モニター・データにアクセスするには、以下のいずれかの権限も必要です。
  • SYSMON
  • SYSCTRL
  • SYSMAINT
  • SYSADM

デフォルトの PUBLIC 特権

制限のないデータベースでは、この関数が自動的に作成されると、EXECUTE 特権が PUBLIC に付与されます。

現在接続されているデータベース上のデータベース・メンバー 1 での再編成操作の詳細を選択します。
SELECT SUBSTR(TABNAME, 1, 15) AS TAB_NAME, SUBSTR(TABSCHEMA, 1, 15) 
   AS TAB_SCHEMA, REORG_PHASE, SUBSTR(REORG_TYPE, 1, 20) AS REORG_TYPE, 
   REORG_STATUS, REORG_COMPLETION, DBPARTITIONNUM 
   FROM TABLE( SNAP_GET_TAB_REORG('', 1)) AS T
以下はこの照会の出力例です。
TAB_NAME     TAB_SCHEMA     REORG_PHASE     REORG_TYPE           ...
--------...- ----------...- -----------...- -------------------- ...
EMPLOYEE     DBUSER         REPLACE         RECLAIM+OFFLINE+ALLO ...
                                                                 ...
  1 record(s) selected.                                          ...
この照会からの出力 (続き)。
... REORG_STATUS REORG_COMPLETION DBPARTITIONNUM 
... ------------ ---------------- -------------- 
... COMPLETED    SUCCESS                       1 
...                                              
SNAP_GET_TAB_REORG 表関数を使用して、マルチディメンション・クラスタリング (MDC) 表または挿入時クラスタリング (ITC) 表からエクステントを再利用するための再編成操作に関するすべての情報を選択します。
db2 -v "select * from table(snap_get_tab_reorg(''))"

TABNAME  REORG_PHASE       REORG_MAX_PHASE   REORG_TYPE
-------- ----------------- ----------------- ---------------------------
T1       RELEASE           3                 RECLAIM_EXTENTS+ALLOW_WRITE

REORG_STATUS REORG_COMPLETION REORG_START                REORG_END
------------ ---------------- -------------------------- --------------------------
COMPLETED    SUCCESS          2008-09-24-14.35.30.734741 2008-09-24-14.35.31.460674

戻される情報

表 1. SNAPTAB_REORG 管理ビューおよび SNAP_GET_TAB_REORG 表関数によって戻される情報
列名 データ・タイプ 説明または対応するモニター・エレメント
SNAPSHOT_TIMESTAMP TIMESTAMP スナップショットがとられた日時。
TABNAME VARCHAR (128) table_name - 表名
TABSCHEMA VARCHAR (128) table_schema - 表スキーマ名
PAGE_REORGS BIGINT page_reorgs - ページ再編成
REORG_PHASE VARCHAR (16) reorg_phase - 表再編成フェーズ。このインターフェースは、sqlmon.h での定義に基づくテキスト ID を戻します。これは次のいずれかです。
  • BUILD
  • DICT_SAMPLE
  • INDEX_RECREATE
  • REPLACE
  • SORT
  • SCAN
  • DRAIN
  • RELEASE
または SORT+DICT_SAMPLE.
REORG_MAX_PHASE INTEGER reorg_max_phase - 表再編成の最大フェーズ数
REORG_CURRENT_ COUNTER BIGINT reorg_current_counter - 表再編成の進行状況
REORG_MAX_COUNTER BIGINT reorg_max_counter - 表再編成の合計量
REORG_TYPE VARCHAR (128) reorg_type - 表再編成の属性。このインターフェースは、以下の ID の組み合わせを '+' 記号で区切ったものを使用してテキスト ID を戻します。

以下のいずれかが使用されます。

  • RECLAIM
  • RECLUSTER
  • RECLAIM_EXTS
さらに以下のいずれかが使用されます。
  • +OFFLINE
  • +ONLINE
アクセス・モードが指定されている場合、以下のいずれかが使用されます。
  • +ALLOW_NONE
  • +ALLOW_READ
  • +ALLOW_WRITE
オフラインで RECLUSTER オプションが指定されている場合、以下のいずれかが使用されます。
  • +INDEXSCAN
  • +TABLESCAN
オフラインの場合、以下のいずれかが使用されます。
  • +LONGLOB
  • +DATAONLY
オフラインで、オプションが指定されている場合、以下の任意のものが使用されます。
  • +CHOOSE_TEMP
  • +KEEPDICTIONARY
  • +RESETDICTIONARY
オンラインで、オプションが指定されている場合、以下が使用されます。
  • +NOTRUNCATE
例 1: REORG TABLE TEST.EMPLOYEE が実行された場合、以下のように表示されます。
RECLAIM+OFFLINE+ALLOW_READ+DATAONLY
+KEEPDICTIONARY  
例 2: REORG TABLE TEST.EMPLOYEE INDEX EMPIDX INDEXSCAN が実行された場合、以下のように表示されます。
RECLUSTER+OFFLINE+ALLOW_READ+INDEXSCAN
+DATAONLY+KEEPDICTIONARY
REORG_STATUS VARCHAR (10) reorg_status - 表再編成の状況。このインターフェースは、sqlmon.h での定義に基づくテキスト ID を戻します。これは次のいずれかです。
  • COMPLETED
  • PAUSED
  • STARTED
  • STOPPED
  • TRUNCATE
REORG_COMPLETION VARCHAR (10) reorg_completion - 表再編成完了フラグ。このインターフェースは、sqlmon.h での定義を基にしてテキスト ID を戻します。以下のいずれかとなります。
  • FAIL
  • SUCCESS
REORG_START TIMESTAMP reorg_start - 表再編成開始時刻
REORG_END TIMESTAMP reorg_end - 表再編成終了時刻
REORG_PHASE_START TIMESTAMP reorg_phase_start - 表再編成フェーズ開始時刻
REORG_INDEX_ID BIGINT reorg_index_id - 表の再編成に使用される索引
REORG_TBSPC_ID BIGINT reorg_tbspc_id - 表が再編成される表スペース
DBPARTITIONNUM SMALLINT dbpartitionnum - データベース・パーティション番号モニター・エレメント
DATA_PARTITION_ID INTEGER data_partition_id - データ・パーティション ID。非パーティション表では、このエレメントは NULL になります。
REORG_ ROWSCOMPRESSED BIGINT reorg_rows_compressed - 圧縮行数
REORG_ROWSREJECTED BIGINT reorg_rows_rejected_for_compression - 圧縮がリジェクトされる行
REORG_LONG_TBSPC_ID BIGINT reorg_long_tbspc_id - 長いオブジェクトが再編成される表スペース
MEMBER SMALLINT member - データベース・メンバー・モニター・エレメント