• 締切済み

db file scattered readの回避

エクスポートファイルのインポート時に、CREATE INDEX で "db file scattered read" が発生して大幅な時間が掛かっています。 この事象を回避してcreate indexをより高速に完了させる方法などありますでしょうか?

みんなの回答

  • lond_nag
  • ベストアンサー率57% (4/7)
回答No.2

「インポート時」というのはimp パラメータの「index=y」のことでしょうか? 索引データのインポートをしないで、#1の方が回答してくれたやり方でCreate Indexを している時に、ということでしょうか? もし、インポート後に個別にcreate indexしようとしたときに、表のフルスキャン で時間がかかる、という意味だったら、索引を作るために表を見に行くときの、 マルチブロック読み取りの問題です。 DB起動時の初期化パラメータDB_FILE_MULTIBLOCK_READ_COUNT(初期値8)を64とか 128(最大値)にするのが手っ取り早いでしょう。 キャッシュのヒット率やビジー状況を見て、DB_KEEP_CACHE_SIZEを変えるのも効果 あるでしょう。 一般的にはそんなところです。 #DBのバージョンやDiskの構成、IO等状況、具体的な手順・コマンド、何をしたときに、 何をもってボトルネックを判断したか、くらいは説明しないと、雑把すぎて、どう回答 すればいいのかわからないですよ。

全文を見る
すると、全ての回答が全文表示されます。
  • SaKaKashi
  • ベストアンサー率24% (755/3136)
回答No.1

exp時にindexes=nを指定してexpする。 imp後にcreate indexをする。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • phpMyAdmin2.6.0でDBのバックアップ

    宜しくお願い致します。 phpMyAdmin2.6.0でエクスポート機能を利用してDBのバックアップを取ってみました。いくつかエクスポートするファイル形式が選べるのですが、とりあえず「sql」形式で圧縮無しのエンコーディングもnonでファイルにしてみました。このファイルは本当に使えるのでしょうか?というのも、全部で8DB分をファイルにエクスポートしたのですが、エクスポートファイル毎に実際のDBのサイズとバックアップしたファイルサイズで多かったり少なかったりと差があります。それと、phpMyAdminでエクスポートしたこのファイルをインポートする方法が良く分かりません。教えて頂けると大変助かります。

    • ベストアンサー
    • MySQL
  • DB2のエラーコードについて

    DB2でエクスポートを行うバッチファイルを作成しています。エクスポートするときに、エラーコードをlogに吐かれると思うのですが、エクスポートに失敗した場合は、このlogファイルも吐かれません。しかも、より細かい(1件目のレコードが正しくエクスポートされた。2件目のレコードでエラーが発生しました。等)エラーコードをlogファイルに吐いて残したいのですが、何かよい方法はないでしょうか?よろしくお願いします。

  • Access97でDBファイルを最適化しようとするとできない

    どなたか、知っていたら教えてください。 OSがWindows2000で、Access97を使っています。 そして作成したDBをサーバーにおいて 複数人で共有しています。 前日まで普通に動いていたのですが、最適化しようとすると、「読み取り権限がありません」とメッセージが出て、 最適化ができず、そのままOKで進んでいくと、 エラーテーブルの入ったファイルが、最適化を試みる 度に増えていきます。 ちなみに読み取り権限などは何もつけていません。 とりあえず、新しいDBを作成し、すべてのオブジェクトをインポートしたところ、最適化できるようになりました。しかし、また再現すると困るので、原因を突き止めて、回避策があれば、それを取りたかったのですが、どうしたらよいのでしょうか?

  • ハッシュ化するとDBに登録できない

    認証に使用するパスワードをmd5で暗号化してDBへ登録する処理をしています。 その際、暗号化後の文字列に”\r”という文字が入り、DBに登録できないという事象が発生しています。 そう多く発生している訳ではないようなのですが…。 そんなケースに当たった方、いらっしゃいますでしょうか? その場合、どうやってそれを回避されましたか? perlは5.8.5、PostgreSQLは7.4.13です。

    • ベストアンサー
    • Perl
  • db2 index テーブルについて

    いつもお世話になっております。 DB2について、質問です。 テーブルにcsvファイルをインポートしようとしたところ 割り込みエラーが発生してしまいました。 詳しくはわかっていないのですが、 原因として考えられることとして indexテーブルが破壊されているのではないかと 思われます。 そこで、indexを使用しているかどうかについては 下記コマンドで確認しました。 describe indexes for table [user].[table] show detail ただ、indexテーブルが壊れているかどうかはわかりません。 どうすれば、わかりますでしょうか。 大変申し訳ございませんが ご教示くださいますよう宜しくお願いいたします。

  • 異なるDBの値比較方法

    まったく同じジョブの内容でスケジューリング方法を変えて実行した時、その前後でDBの内容が同一であるか検証する方法を考えています。 DBはoracle9、テーブル数は約100強、エクスポートすると約500MBです。 検証方法は、処理前に本番データをエクスポートし、それを検証環境にインポート、検証環境でスケジュールを実行して、まったく同じ結果を得られるかを検証します。 以下の案を思いつきましたが、イマイチぴんときません。何かいい方法を教えてください。 案1 DBをDBリンクで接続し、オブジェクトブラウザのオブジェクト比較機能を使う。 →簡単にできるが、結果を得るの時間がかかりすぎる。 案2 DBをDBリンクで接続し、検証用プロシージャを作成して比較する。 →user_tables, user_tab_columnsなどを使うプロシージャの作成が面倒。 案3 処理実行後に、本番と検証環境でそれぞれテーブルごとにエクスポートし、エクスポートファイルをUNIXでソートした上で、uniqコマンドで比較する。 →これが現実的?

  • 捨てられないファイル Thumbs.db って?

    ゴミ箱の2個のファイルが消せません。 消そうとすると「Thumbs.dbがロックされているので完了できません」 と出ます。再起動しても駄目です。 どなたか処理方法しっていますか?

    • ベストアンサー
    • Mac
  • 待機イベント

    db file scattered readが発生したときsql ordered by gets(statspack)にあがったsqlをチューグする必要があると見たのですがいまいちつながりがわかりません。バッファを多く使うsqlはマルチブロック読み込みを起こす原因のひとつだという考えでよろしいでしょうか?

  • OracleからDB2への移行

    こんにちは。 OracleのExportファイル(dmp)を直接、DB2にロードする方法ってありませんか?

  • DB2でのcsvファイルのインポート

    今、IBM DB2 for Windowsを扱っているのですが、 csvファイルのインポートが良くわかりません。 csv形式で保存されているファイルがあるのですが、 そのファイルを元にテーブルを作りたいんです。 SQL以外で、何か簡単にできる方法は無いのでしょうか? また、やり方を解説しているページがあれば教えてください。 お願いします。