DBMS_STATS.GATHER_TABLE_STATSのestimate_parcent

統計情報を手動で取りたくてDBMS_STATSパッケージをいじっていたのですが
estimate_parcent(サンプリングするパーセンテージ)が
デフォルトでNULLになっていたので、NULLだと何パーセントになるのかなー
ってマニュアル漁ってたら
「NULLは計算を意味します」
と書いてあった。
全く意味がわからなかったので$ORACLE_HOME/rdbms/admin/dbmsstats.sqlの中身を見てみたら
「NULL means compute.」
って書いてありました。
ここは和訳しなくてよいのに。。。


つまりNULLの場合はcompute(全部サンプリング)ということですね。
分かり難いなー


ちなみに10gから勝手にjob登録されてる統計情報の自動収集ですが
computeで統計とりに行きますので、でっかいテーブルの場合は注意が必要です。


また自動統計収集は月〜金が22時から8時間、土日が24時間フルで回ります。
収集対象の優先順位はORACLEが勝手に必要だと思ったものから順に行われていきます。