Oracle DBMS_STATSパッケージ
DBMS_STATSは、データベース・オブジェクト用に収集したオプティマイザの統計情報を表示・変更するパッケージである。
目次
- プロシージャ
- GATHER_DATABASE_STATS
- GATHER_DICTIONARY_STATS
- GATHER_FIXED_OBJECTS_STATS
- GATHER_INDEX_STATS
- GATHER_SCHEMA_STATS
プロシージャ
DBMS_STATS パッケージには、以下に示すプロシージャが含まれる。
- GATHER_DATABASE_STATS
- GATHER_DICTIONARY_STATS
- GATHER_FIXED_OBJECTS_STATS
- GATHER_INDEX_STATS
- GATHER_SCHEMA_STATS
GATHER_DATABASE_STATS
GATHER_DATABASE_STATS は、データベース内のすべてのオブジェクトに関する統計情報を収集するプロシージャである。
以下に示す引数を指定できる。
- estimate_percent
- 統計収集に使用するサンプリング率。DBMS_STATS.AUTO_SAMPLE_SIZE (推奨) を指定すると、Oracleが最適なサイズを決定します。
- degree
- 統計収集に使用する並列度。DBMS_STATS.AUTO_DEGREEを指定すると、Oracleが自動で決定します。
- options
- 収集するオブジェクトの範囲を指定します。
| 値 |
意味 |
'GATHER' |
統計を新たに収集(通常の用途) |
'GATHER AUTO' |
古いまたは欠落した統計のみ収集(自動統計収集と同様) |
'GATHER STALE' |
古くなった統計のみ収集 |
'GATHER EMPTY' |
統計が存在しないオブジェクトのみ収集 |
'LIST STALE' |
古くなった統計をリスト化(収集しない) |
- cascade
- TRUEに設定すると、関連する索引の統計も収集されます。DBMS_STATSでは通常TRUEが推奨されます。
- gather_sys
- TRUEに設定すると、SYSスキーマの統計(データディクショナリ統計)も収集されます。通常は自動ジョブで収集されますが、手動で実行する場合に指定できます。
GATHER_DICTIONARY_STATS
GATHER_DICTIONARY_STATS は、ディクショナリのスキーマに関する統計情報を収集するプロシージャである。
GATHER_FIXED_OBJECTS_STATS
GATHER_FIXED_OBJECTS_STATS は、すべての固定オブジェクト(動的パフォーマンス表)に関する統計情報を収集するプロシージャである。
GATHER_INDEX_STATS
GATHER_INDEX_STATS は、索引の統計情報を収集するプロシージャである。
GATHER_SCHEMA_STATS
GATHER_SCHEMA_STATS は、スキーマ内のすべてのオブジェクトに関する統計情報を収集するプロシージャである。