ここではORACLEデータベースで、表や索引の統計情報を取得する方法を紹介します。 表(テーブル)の統計情報の取得 テーブルの統計情報を取得するには、DBMS_STATSという既存のパッケージのGATHER_TABLE_STATSというプロシージャを起動します。 起動するときに、OWNNAMEにオーナー名(スキーマ名)、TABNAMEにテーブル名を指定します。 begin DBMS_STATS.GATHER_TABLE_STATS( OWNNAME =>'user1' ,TABNAME=>'table1' ); end; パラレル実行する場合 テーブルのレコード件数が多くなればなるほど、統計情報を取得する時間は長くなります。 リソースに余裕があれば、統計情報の取得をORACLEのパラレル実行で簡単に速く、時間を短縮することが出来ます。 先ほどのオーナー名、テーブル名に加えて、パラレル実行数
DBMS_STATSパッケージ の estimate_percentパラメータ を AUTO_SAMPLE_SIZE と 100(100%) に設定した際の PGA使用量 を比較してみる。(Oracle Database)oracleDatabase 表題の通り、DBMS_STATSパッケージ の estimate_percentパラメータ を変更した時の PGA使用量 を比較してみたやで。 彡(゚)(゚) 1. 検証を行った環境 今回は Autonomous Database の ATP-S の環境を使用しました。必ずしも Autonomous Database の 必要は無いんですが、IO性能が良いのと SSB(Star Schema Bench) のサンプルデータがプリセットされているので。 (゚ε゚ ) 2. サンプルデータの作成(SSB.CUSTOMER表の複製) Autonom
DBMS_STATS.GATHER_TABLE_STATSで表統計と列統計を取得する 手動で表統計情報の取得を行うにはDBMS_STATS.GATHER_TABLE_STATS(プロシージャ)を使います。こちら勘違いされがちなのですが列統計(ヒストグラムの収集)の収集も同プロシージャにて行います。どのカラムを対象に列統計の取得を行うのかを METHOD_OPT パラメータで制御します。(ヒストグラムだけの取得はできません。ヒストグラムの収集には表統計の取得が伴います) 通常お勧めするOracle任せでの取得方法 Oracleは、かつて実行されてきたSQLをもとに取得すべき対象カラムを選別します。以下例では「METHOD_OPT」「CASCADE」パラメータを冗長的に指定していますが、それぞれのデフォルト値がFOR ALL COLUMNS SIZE AUTO、DBMS_STATS.AUTO_
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く