ttIsqlを使用したデータベース構造の表示
データベース構造についての情報を表示するttIsqlコマンドはいくつか用意されています。
次に、最も有効なコマンドの概要を示します。
-
describe: データベース・オブジェクトに関する情報を表示します。 -
cachegroups: キャッシュ・グループの属性を表示します。 -
dssize- 永続メモリー領域および一時メモリー領域の現在のサイズをレポートします。 -
tablesize:ttComputeTabSizesツールを使用して分析された表のサイズが表示されます。 -
monitor: データベースの現在の状態のサマリーを表示します。
ttIsqlのdescribeコマンドの使用
describeコマンドを使用して、各データベース・オブジェクトに関する情報を表示します。準備済のSQL文および組込みプロシージャに関するパラメータを表示します。
describeコマンドの引数として、表、キャッシュ・グループ、ビュー、マテリアライズド・ビュー、順序、シノニムなどの名前、組込みプロシージャ、SQL文、事前に準備済のSQL文のコマンドID、PL/SQL関数、PL/SQLプロシージャまたはPL/SQLパッケージを指定できます。
describeコマンドを終了するには、セミコロンを指定する必要があります。
Command> CREATE TABLE t1 (KEY NUMBER NOT NULL PRIMARY KEY, VALUE CHAR (64));
Command> describe t1;
Table USER.T1:
Columns:
*KEY NUMBER NOT NULL
VALUE CHAR (64)
1 table found.
(primary key columns are indicated with *)
Command> describe SELECT * FROM T1 WHERE KEY=?;
Prepared Statement:
Parameters:
Parameter 1 NUMBER
Columns:
KEY NUMBER NOT NULL
VALUE CHAR (64)
Command> describe ttOptUseIndex;
Procedure TTOPTUSEINDEX:
Parameters:
Parameter INDOPTION VARCHAR (1024)
Columns:
(none)
1 procedure found.
Command>ttIsqlのcachegroupsコマンドの使用
cachegroupsコマンドを使用すると、現行のデータベースで定義されているキャッシュ・グループの詳細が表示されます。
キャッシュ・グループに関連付けられているWHERE句のみでなく、キャッシュ・グループに定義されているroot表および子表の属性も表示されます。cachegroupsコマンドには、情報を表示するキャッシュ・グループの名前を引数として指定します。
Command> cachegroups; Cache Group CACHEUSER.READCACHE: Cache Group Type: Read Only Autorefresh: Yes Autorefresh Mode: Incremental Autorefresh State: Paused Autorefresh Interval: 5 Seconds Autorefresh Status: ok Aging: No aging defined Root Table: SALES.READTAB Table Type: Read Only Cache Group CACHEUSER.WRITECACHE: Cache Group Type: Asynchronous Writethrough (Dynamic) Autorefresh: No Aging: LRU on Root Table: SALES.WRITETAB Table Type: Propagate 2 cache groups found.
ttIsqlのdssizeコマンドの使用
dssizeコマンドを使用すると、データベースの最大サイズ、割当てサイズおよび使用中サイズのみでなく、永続パーティションおよび一時メモリー領域の現在のメモリー・ステータスがレポートされます。
ただし、TimesTen Scaleoutの場合、dssizeコマンドがレポートするのは、現在の要素の現在のメモリー・ステータスのみです。
dssizeコマンドは、SYS.V$MONITORおよびSYS.GV$MONITORシステム・ビューに表示される情報と同じ情報をレポートします。
次の例では、kオプションを使用して、データベース・サイズ情報をKB単位で出力します。
Command> dssize k; The following values are in KB: PERM_ALLOCATED_SIZE: 40960 PERM_IN_USE_SIZE: 9742 PERM_IN_USE_HIGH_WATER: 9742 TEMP_ALLOCATED_SIZE: 32768 TEMP_IN_USE_SIZE: 9442 TEMP_IN_USE_HIGH_WATER: 9505
dssizeコマンドの詳細は、Oracle TimesTen In-Memory DatabaseリファレンスのttIsqlを参照してください。
ttIsqlのtablesizeコマンドの使用
tablesizeコマンドでは、表の領域使用量の詳細な分析が表示されます。
指定された表の表サイズを分析するttComputeTabSizes組込みプロシージャを一度コールすると、tablesizeコマンドでは分析されたすべての表の合計サイズのデータが表示されます。
ノート:
Oracle TimesTen In-Memory DatabaseリファレンスのttComputeTabSizesを参照してください。
引数なしでtablesizeコマンドを実行すると、ttComputeTabSizesの計算がすでに実行された、すべての表に対する最大使用可能サイズ指定情報が表示されます。表を引数として指定すると、tablesizeによって、指定した表に対する使用可能サイズ指定のみが表示されます。
tablesizeの構文は次のとおりです。
tablesize [[owner_name_pattern.]table_name_pattern]
次の例では、ttComputeTabSizes組込みプロシージャを起動し、employees表の表サイズが計算されます。次に、tablesizeコマンドによってemployees表のために収集されたサイズ指定情報が表示されます。
Command> call ttComputeTabSizes('employees');
Command> tablesize employees;
Sizes of USER1.EMPLOYEES:
INLINE_ALLOC_BYTES: 60432
NUM_USED_ROWS: 107
NUM_FREE_ROWS: 149
AVG_ROW_LEN: 236
OUT_OF_LINE_BYTES: 0
METADATA_BYTES: 1304
TOTAL_BYTES: 61736
LAST_UPDATED: 2011-06-29 12:55:28.000000
1 table found.これらの値から、オーバーヘッドおよび総領域における該当の表の使用状況を把握できます。
次に例を示します:
-
NUM_FREE_ROWS値は、表に割り当てられた、現在使用されていない行数を表します。システムでは、空行に占有される領域をその他のシステム・オブジェクトまたは構造の保存に使用できません。 -
表が占有する永続領域を計算するには、
TOTAL_BYTES値を使用します。 -
LAST_UPDATEDは、サイズの最終計算時刻になります。より最近の計算が必要な場合は、ttComputeTabSizesを再実行し、新しい出力を表示します。
各計算値の説明は、Oracle TimesTen In-Memory Databaseシステム表およびビュー・リファレンスのSYS.ALL_TAB_SIZESの項を参照してください。
ttIsqlのmonitorコマンドの使用
monitorコマンドを使用すると、dssizeコマンドで戻されるすべての情報、およびデータベースがメモリーにロードされてから収集された接続数、チェックポイント、ロック・タイムアウト、コミット、ロールバック操作などに関する追加の統計情報が表示されます。
Command> monitor; TIME_OF_1ST_CONNECT: Wed Apr 20 10:34:17 2011 DS_CONNECTS: 11 DS_DISCONNECTS: 0 DS_CHECKPOINTS: 0 DS_CHECKPOINTS_FUZZY: 0 DS_COMPACTS: 0 PERM_ALLOCATED_SIZE: 40960 PERM_IN_USE_SIZE: 5174 PERM_IN_USE_HIGH_WATER: 5174 TEMP_ALLOCATED_SIZE: 18432 TEMP_IN_USE_SIZE: 4527 TEMP_IN_USE_HIGH_WATER: 4527 SYS18: 0 TPL_FETCHES: 0 TPL_EXECS: 0 CACHE_HITS: 0 PASSTHROUGH_COUNT: 0 XACT_BEGINS: 2 XACT_COMMITS: 1 XACT_D_COMMITS: 0 XACT_ROLLBACKS: 0 LOG_FORCES: 0 DEADLOCKS: 0 LOCK_TIMEOUTS: 0 LOCK_GRANTS_IMMED: 17 LOCK_GRANTS_WAIT: 0 SYS19: 0 CMD_PREPARES: 1 CMD_REPREPARES: 0 CMD_TEMP_INDEXES: 0 LAST_LOG_FILE: 0 REPHOLD_LOG_FILE: -1 REPHOLD_LOG_OFF: -1 REP_XACT_COUNT: 0 REP_CONFLICT_COUNT: 0 REP_PEER_CONNECTIONS: 0 REP_PEER_RETRIES: 0 FIRST_LOG_FILE: 0 LOG_BYTES_TO_LOG_BUFFER: 64 LOG_FS_READS: 0 LOG_FS_WRITES: 0 LOG_BUFFER_WAITS: 0 CHECKPOINT_BYTES_WRITTEN: 0 CURSOR_OPENS: 1 CURSOR_CLOSES: 1 SYS3: 0 SYS4: 0 SYS5: 0 SYS6: 0 CHECKPOINT_BLOCKS_WRITTEN: 0 CHECKPOINT_WRITES: 0 REQUIRED_RECOVERY: 0 SYS11: 0 SYS12: 1 TYPE_MODE: 0 SYS13: 0 SYS14: 0 SYS15: 0 SYS16: 0 SYS17: 0 SYS9: