Oracle8.0.5を使っています。
Analyzeを定期的に実行しているのですが、データ量が多くなってしまい、時間が掛かっています。
現在はCOMPUTEで週1回くらい実行しています。

Analyzeを月1回に変更するとパフォーマンスが低下したりしますか?
Oralceマスターの皆様、よろしくお願いします。

A 回答 (1件)

どういう理由でAnalyzeコマンドを発行していますか。



"Analyze ... compute statistics;"
を実行すると正確な情報が取得できますが、非常に時間がかかります。

もし正確さをそれ程必要としないのならば、
"Analyze ... estimate statistics;"
を実行してみてください。すぐに終わりますよ。

この回答への補足

ご返答有難うございます。
この統計情報は何の目的で取られるのでしょうか?
Oracleのパフォーマンス向上と聞いたことがあるのですが。
compute → estimate に変更することでパフォーマンスに影響でることなどはないのでしょうか?

もし、estimateにする場合、走査割合はどのくらいを設定すべきでしょうか?
Oracleについてほとんど知識がありませんので、
質問ばかりで恐縮ですが、よろしくお願い致します。

補足日時:2002/01/15 13:17
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qコマンド一覧を取得するには?

「実行可能なコマンド一覧を出力する」コマンドはありますでしょうか?

個人的には,「~wm」という文字列で終わるコマンドを調べたいのですが,そのためにコマンド一覧からgrepで検索しようと思いました.

よろしくお願いいたします.

Aベストアンサー

$PATHのなかから実行可能なものをリストするスクリプトです。
ちなみに私の場合wmで終わるものは、
/usr/bin/pbmtocmuwm
/usr/bin/gnome-wm
/usr/bin/dh_installwm
でした。
-- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< -- 8< --
#! /bin/sh
echo $PATH |
awk -F: '
{
for (i = 1; i <= NF; i++) {
printf("find %s -type f -ls\n", $i);
}
}' | sh |
awk '
$3 ~ /x/ {
print $NF
}'

Qoracleのanalyzeと処理時間について

Oracle9iを使用してシステム開発を行っています。
性能を向上させるため、大量のデータ追加を行った後の検索処理の際にanalyzeを実行することになりました。
しかし、いざanalyzeを実行しても検索時間が必ず短縮するわけではなく、analyzeをすることでかえって遅くなるときがありました。
これはどういうことが原因と考えられるでしょうか?

Aベストアンサー

analyzeは処理時間短縮のおまじないではないからです。

analyzeをする事で、それまでルールベースだった実行計画
がコストベースに変わったりした場合、オプティマイザは
統計情報を見て
「索引を使うべきか」「表をどの順番で結合するか」
などを判断します。

ルールベースでは必ず索引を使っていたのに、統計情報が
収集された事で索引を使うための閾値が変わり、全表走査
になる、と言った事はよくあります。

チューニングマニュアルをご確認ください。
手許になければOTNで。(登録無料)

オラクル技術者のためのダウンロード・掲示板・ドキュメント
http://otn.oracle.co.jp/

参考URL:http://otn.oracle.co.jp/

QMS-DOSで使えるコマンド一覧を表示するコマンド

そのコマンドを入力すれば、MS-DOS内で使える
コマンド一覧が表示されるコマンドを知りたいのですが
どなたかご存知の方、いらっしゃいませんか?
UNIXで言うところのmanコマンドに当たるものです。

Aベストアンサー

Windowsカテゴリなので、MS-DOSのことじゃなくて、WindowsのDOSプロンプトとか、コマンドプロンプト内で使えるコマンドのことだと思います。

1) どんなコマンドが使えるか
Win9x,Me系: \windows\command のフォルダに主なコマンドがあります
Win2K,XP系: help で主なコマンドが出ます
どちらも管理系のコマンド等は別のところにあったりします。

unixでもmanコマンドでは「使えるコマンド一覧」はわかりません。網羅的に調べるには PATHにあるディレクトリをひとつずつ ls して調べるしかないです。Windowsでも同じで、PATHにあるディレクトリをひとつずつ調べるしかないのですが、GUIでしか使えないコマンドも混じっています。アイコンの絵がついているものはおおむねGUIですが、逆は真ではないので調べるのは難しいです。

上記の主なコマンド以外も含めたプロンプトで使えるコマンドを網羅的に知りたいなら書籍を見るのが早道でしょう。

2)unix の man 相当機能
上記主要コマンドについては、コマンド名 /? で使い方が出ますが、それ以外の管理系コマンドでは出ないことが多いです。Webか書籍で調べるしかないです。

Windowsカテゴリなので、MS-DOSのことじゃなくて、WindowsのDOSプロンプトとか、コマンドプロンプト内で使えるコマンドのことだと思います。

1) どんなコマンドが使えるか
Win9x,Me系: \windows\command のフォルダに主なコマンドがあります
Win2K,XP系: help で主なコマンドが出ます
どちらも管理系のコマンド等は別のところにあったりします。

unixでもmanコマンドでは「使えるコマンド一覧」はわかりません。網羅的に調べるには PATHにあるディレクトリをひとつずつ ls して調べるしかないです。Win...続きを読む

QSQL、oracleにて文字列操作(連結、切りだし)のパフォーマンス向上法

oracle7を使用しています。

#desc a
num  char(8)
code char(2)
seq char(2)
・・・

#desc b
bango char(12)
・・・

上記場合で aのnum,code,seq を結合したものと bのbangoが
同じかどうかの検索を外部結合付きで行いたいとします。

where
bango(+) = num || code || seq

で動作は正常に行われるのですが、検索速度がかなり重くなってしまいます。
文字列連結(||)は重くなるというのを聞いたことがあるのでできれば
(||)を使用したくないのです。

where
substr(bango,0,8) (+) = num
and substr(bango,9,2) (+) = code
and substr(bango,11,2) (+) = seq

とすると外部結合のところでおこられちゃいました。
文字列連結をつかわずに上記SQLの検索パフォーマンス向上法を
どなたか教えていただけませんか?

oracle7を使用しています。

#desc a
num  char(8)
code char(2)
seq char(2)
・・・

#desc b
bango char(12)
・・・

上記場合で aのnum,code,seq を結合したものと bのbangoが
同じかどうかの検索を外部結合付きで行いたいとします。

where
bango(+) = num || code || seq

で動作は正常に行われるのですが、検索速度がかなり重くなってしまいます。
文字列連結(||)は重くなるというのを聞いたことがあるのでできれば
(||)を使用したくないのです。

where
substr(ban...続きを読む

Aベストアンサー

再投稿です。CONCAT()関数は試してみましたか?
||演算子と同じです。
でも処理時間が早くなるか自信ないです。
うまくいかなかったらすみません。

where
bango(+) = CONCAT(num, code, seq)

Qコマンドプロンプトを使ってネットワークの一覧を表示

コマンドプロンプトを使ってネットワークの一覧を表示する方法
LAN内のPCやプリンタ、ネットワーク機器のIPアドレスを
調べて一覧にするコマンドプロンプトのコマンドはありませんか?
固定IPかDHCPから割り振られたIPか、わかると更に嬉しいです。

なければそういった機能があるソフトでもいいので
ご紹介頂けると幸いです。

Aベストアンサー

こちら参考に
★lan内のpcをipアドレスで一覧表示したい | OKWave
http://oshiete.goo.ne.jp/qa/5829669.html

QOracle8.0.5で、差分ロードする際、処理を高速化させる方法を教えて下さい

Oracle8.0.5で、差分ロードする際、
処理を高速化させる方法を教えて下さい。

Oracleの知識がほとんど無いので、作業が簡単で
効率的な方法を特に募集します。

よろしくお願いいたします。

Aベストアンサー

ロードはSQLLorderでいいんですよね?

>(1)TEMPテーブルにデータをロード
>(2)TEMPテーブルから本テーブルにInsert文で差分を抽出する
>(3)本テーブルにUPDATE文で差分データ文をUPDATEする。

(2)、(3)の区別をするためのマッチングは、相関副問い合わせで行ってますか?
もし、そうであれば、(2)の処理に時間がかかるはずです。
(件数にもよりますが)。
相関副問い合わせで更新対象のレコードを削除してしまい、本テーブルにすべての差分データをロードするという手もあります。



>Tableは、単純作成しただけで、インデックス等
>を一切張っておりません。

主キーもないんですか?
ないと更新という考えが出来ないはずですが。
主キーはあるというのなら、TEMPにもはってますか?

Qls コマンドで *.jpg と *.JPG の画像一覧を出したい

ls コマンドいっぱつで、
*.jpg または *.JPG の画像一覧を出したいのですが
どう引数を指定したらよいでしょうか..??

Aベストアンサー

ls *.[jJ][pP][gG]

でどうですか?

Q2回実行のSQL文を1回にしたい

テーブルXXXがありますその中の各フィールドは以下の通りです。

フィールド A
フィールド B
フィールド C

まずA=0の検索をしてBの値を取り出し、新たにB=取り出した値で
検索をしたいのですがSQL文が1つにできないでしょうか?
今現在、
SELECT * FROM XXX WHERE A=0 を実行してBの値を変数Dに入れ
SELECT * FROM XXX WHERE B=D と実行して全てのCの値を取り出しています
よろしくお願いします。

Aベストアンサー

SELECT * FROM XXX WHERE B=(
SELECT B FROM XXX WHERE A=0
);

No.1の回答とどちらが速いかは不明です.

Qコマンドプロンプトの操作一覧

コマンドプロンプトでできる操作一覧のようなサイト、もしくは書籍を探しています。

たとえば、ipconfig /renew でIPアドレス再取得 …など

今一番知りたいのは、回線速度が安定して通信できているかを
先日、業者さんがきて、PCでやってたのが知りたいのですが
こんごもいろいろ調べて行きたいので
わかりやすい一覧のサイトがあればと思います。
よろしくお願いいたします。

Aベストアンサー

業者さんがカッコよく仕事してる姿見てると
ホント、惚れますよね~~(笑)

んでまあ、つい最近の記事(これから追加されていく)なんですけど、
ネットワーク関係ならこのへん読むといいかもですね~。

で、IT Proなんですけど、ひじょーに為になるのでぜひブックマーク
しておいてください。毎日読んでると結構勉強になりますよ~~。


っちゅうわけで、以上な感じで。


*****************************************

ネットワーク・コマンド道場

目次

日経NETWORK

 ネットワーク技術者を目指す人なら,ぜひ身につけておきたい
コマンドの使い方を解説していきます。コマンドによって何ができ,
実行結果から何が読み取れるか,現場で役立つ実践的な知識
が身につきます。(2006年02月06日)

http://itpro.nikkeibp.co.jp/article/COLUMN/20060125/227900/

↑ネットワーク技術者を目指してなくても、読んだら面白い…
と思うよ。はい。


結果を読めなきゃ意味ないから、全部読んでね☆

業者さんがカッコよく仕事してる姿見てると
ホント、惚れますよね~~(笑)

んでまあ、つい最近の記事(これから追加されていく)なんですけど、
ネットワーク関係ならこのへん読むといいかもですね~。

で、IT Proなんですけど、ひじょーに為になるのでぜひブックマーク
しておいてください。毎日読んでると結構勉強になりますよ~~。


っちゅうわけで、以上な感じで。


*****************************************

ネットワーク・コマンド道場

目次

日経NETWORK

 ネットワーク...続きを読む

QoracleマスターGOLD試験

ORALCEマスターGOLD試験を受けようと思います。本屋さんに行ってもPL/SQLの本が売ってなくて、試験内容が変わるということを聞きました。今は受験しない方がいいのでしょうか?DBA(1)は受験した方がいいのでしょうか?黒本だけで試験勉強をしようと思いますが、どのように勉強すればよいでしょうか?アドバイスお願いします。

Aベストアンサー

試験の内容は変わっても、PL/SQL自体は、変わることがないと思いますよ。

PL/SQL自体、本が少なく勉強するのも大変かと思いますが、自分で試せる環境を作って勉強したらいいですね。


人気Q&Aランキング

おすすめ情報