表・索引の統計情報を高速に取得する方法

ここでは、表(テーブル)・索引(インデックス)の統計情報を高速に取得する方法を紹介します。

表や索引の統計情報を取得する際、通常のSQLと同様にパラレル実行することが出来ます。統計情報の取得処理は表や索引の容量が増大するにつれ時間がかかり、遅くなることがあります。

そういった場合は、リソースを鑑みながら、パラレル実行することをオススメします。degreeという並列度を指定することで、パラレル実行することができます。

パラレル実行する方法

–表の場合
begin
DBMS_STATS.GATHER_TABLE_STATS(ownname => ‘user1’, tabname => ‘table1’, degree => ‘4’);
end;

–索引の場合
begin
DBMS_STATS.GATHER_INDEX_STATS(ownname => ‘user1’, indname => ‘ix_table1’, degree => ‘4’);
end;

最後に

最後までお読みいただきありがとうございます。

SQLのチューニングについては、「SELECT文のSQLチューニング方法まとめ」で詳しく解説していますので、ぜひ参考にしてください。