• ベストアンサー
  • 困ってます

Oracle インデックスについて

オラクルを勉強中の身です。 以下の件で、困っております。ご教授ください。 インデックスの容量が膨れ上がってしまい、現時点で2GB以上あるインデックスが、50個近くあり、今後も拡大が懸念され困っております。 (最大で30GBのが数個あります。) 上司に進言したいと考えておりますが、容量が膨れ上がると、どのような影響があるのか、対策をご教示ください。 (参考サイトがあれば教えてください。) 尚、テーブルについても、2GB以上の数量も同じぐらいあります。 現在、特に目立ったパフォーマンスの劣化がありません。(実際劣化はあるのでしょうが、認識していないのが現状です。) ちなみに、Enterpriseへのバージョンアップは考えておりません。 使用しているオラクル環境は以下になります。 Oracle Database 10g Release 10.2 Standard Edition 以上、宜しくお願い致します。

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数1498
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.3

1. DELETEが発生するテーブルの場合、インデックスに空きスロットができて無駄に膨れ上がっている可能性もあります。 DELETEや、INDEX列のUPDATEがあるテーブルのINDEXはANALYZEして無駄領域を検査してみてください。 INDEXのREBUILDで無駄領域が解消され、アクセスも早くなる場合があります。 2. 一定期間INDEXのMONITORINGをかけて、使われてなさそうなものがあれば削除しましょう。 3. インデックスがうまく使われているおかげで、データ量が増えても性能にあまり影響がないのかも知れません。テーブルフルアクセスと違い、データ量が増えても少ない検索範囲でデータ参照するためのものですからね。 しかし、あまりデータ量が増えすぎてキャッシュ効率が落ちだすと性能に影響が出始めるかも知れません。 システム寿命の年数の運用に耐えるだけのメモリとディスクを確保していないのであれば、 業務上、もう必要ないデータを別の場所に移す・削除するようなデータアーカイブ・クリーニング運用を行って、データが際限なく増えないようにしないといけないでしょうね。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

お礼が遅くなりました。 回答いただき有難うございました。 ご教示いただいたことを、行えるよう検討していきます。

その他の回答 (2)

  • 回答No.2
  • 3rd_001
  • ベストアンサー率66% (115/174)

索引のサイズ見積もりをしてみて過大であれば再作成を検討してみればよいと思います。適切なサイズであれば問題ないかと。 9i時代のものですが以下の資料はよくまとまっています。 http://otndnld.oracle.co.jp/skillup/oracle9i/4_1/index.html 索引の断片化が生じるとパフォーマンスへの影響はあるかと思います。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

回答有難うございます。 容量見積サービスも利用し、サイズ見積もりしてみます。 サイズが大きいと再作成するのも時間がかかりそうですね。

  • 回答No.1

 テーブルへのレコード追加に伴って、インデックスも増加すること 自体は自然なことなので、特別視する必要は無いと思います。  しかし、インデックスの増加によってディスクの空き容量の心配を しなければならない状況であるなら、物理的な対応を検討しなければ ならないと思います。  

共感・感謝の気持ちを伝えよう!

質問者からのお礼

回答いただき有難うございます。 ディスク容量に関しても注視していきます。

関連するQ&A

  • ORACLE ダウングレード

    現在 ORACLE Database 10G Enterprise Editions を使用しているのですが ORACLE Database 11G Standard Editions に変更しようと計画しています 実際に変更された方がありましたら問題点と解決策を教えていただけますでしょうか よろしくお願いします

  • Oracleを始めようと思うのですが・・

    今後必要になりそうなのでOracleを導入して自宅で学習しようと思います。 そこでいろいろと分からないことが出てきました。 OracleのサイトでFree Downloadというリンクがありました。 http://www.oracle.com/technology/software/products/database/index.html これを観てみるとStandard, Enterpriseエディションへのリンクがあり、 そしてなぜか10gのExpress Editionへのリンクもありました。 (Express Editionは10gしかない?) これらのバージョンは全て1ヶ月程度の試用版ということでしょうか? あるいはダウンロードはできるけど使用にはシリアルなどを入力しないと使えないということなのでしょうか? それとオラクル10gまたは11gなどを利用する際はVistaのHome PremiumとかXPのHome Editionなどでも使えるのでしょうか? 私の自宅では無線LANなので無線LANなどでもオラクルは使えるのか、などいろいろと疑問が出てきてしまいました。

  • ORACLE 大量レコードの削除

    Oracleで大量レコードを削除する場合、 どういった方法を取ればよいですか? 削除予定レコード数は約2万件です。 以下は使用しているOracleのversionを調べたものです。 Oracle Database 10g Release 10.2.0.2.0 - 64bit Production これだと、partitionが使用できないと思われるので (Enterprise Editionじゃないから)どなたかお力添えをお願いします。

  • ORACLE のバージョンアップに伴うODBC接続について

    オラクルのバージョンアップを行います。 クライアントで、サブシステムとしてアクセスによるODBC接続でリンクを張ってデータを利用していますが、影響があるのでしょうか? Oracle 10g Release2(10.2.0)    ?  ↓ Oracle 10g Release2(10.2.0.4)

  • Oracle Databaseのインデックスを(意図的に)断片化させたい

    Oracle Database 10gのインデックスについて、 再構築(ALTER INDEX ___ REBUILD )コマンドの 検証を行うため、意図的にインデックスの断片化を 発生させたいと考えています。 (一般的にはDELETE、INSERT、UPDATEを繰返すうちに 断片化していくものです。) どなたか、インデックスを断片化させる スクリプトのサンプルなどをお持ちでないでしょうか? よろしくお願いいたします。

  • Oracle10gのインストールについて

    Oracle10gのインストールについてご質問ですが インストール時に「Standard Edition」、「Enterprise Edition」の 選択があるのですがこれはどちらを選択すればよいのでしょうか? 「Standard Edition」で購入しても「Enterprise Edition」で インストールってできちゃいますよね?

  • oracle10gのインストールについて

    oracle10gのインストールについて 2台のPC(WindowsXP Pro (1)(2))に各々、oracle10g Standard Editonをインストールします PC(1)に外付けデイスク(E:ドライブ)を付けPC(1)でDATABASEをE:に作成します PC(2)でINIT.ORAをCONTOROL.ORA(制御ファイル)をE:から参照するように設定すれば PC(2)からでも外付けのDATABASEを参照することができますでしょうか。

  • 64bitサーバにOracleが作成できない!?

    ご存知のかたいらっしゃいましたら教えて下さい。 現在、Windows Server 2003 standard X64 Edition に Oracle 10g Release 10.1.0(32bit)をインストールし、 Database Configuration Assistant に於いてDBを 作成しようとしていますが、「Ora-12546:TNS:アクセス権が拒否されました」が表示され、以降の処理が行えなく なります。 確認したところ32bit Oracle で32bitサーバには問題な くインストールできました。 32bit Oracle では64bitサーバにインストールできない のでしょうか?対処方法(パッチなど)がございましたら ご教示願いたいと思います。 宜しくお願い致します。

  • Oracle10g Expressのダウンロード

    について教えて下さい。 ・サインインして、 ・同意し、 ・Oracle Database 10g Release 2 (10.2.0.1) Express Edition for Microsoft Windows ・Oracle Database 10g Express Client 「OracleXEClient.exe」をクリックし保存。 ダウンロードした、ファイルをクリックしたのですが、 (アイコンは、真っ白いファイル) 「ファイルを開くプログラムの選択」ダイアログが出てしまいます。 どうすれば良いのか、教えて頂きたいです。 宜しくお願いします。

  • Oracle上のテーブルからCREATE TABLE文をGenerateする方法

    Oracle上に既にあるテーブルからCREATE TABLE文を生成する方法はありますか? Oracle 10g R2 Enterprise Edition Windows 2003 Server Standard R2