0

私はOracle SQL Developerに取り組んでおり、ウィキペディアのデータを使用してテーブルを作成したため、データのサイズは非常に大きく、7つのテーブルがあります. JSP を使用してデータをフェッチして表示する検索エンジンを作成しましたが、クエリごとにアプリケーションが 4 つのテーブルにアクセスする必要があり、アプリケーションに非常に時間がかかるという問題があります。

すべてのテーブルにインデックスを追加しましたが、それでも時間がかかるため、アプリを最適化し、結果を表示するのにかかる時間を短縮する方法についての提案はありません。

4

1 に答える 1

1

アプリケーションを調整するには、いくつかの方法があります。また、データベース エンド、フロント エンド、またはその 2 つの組み合わせでチューニングを行うこともできます。データベースの最後では、より一般的に検索されたデータを要約するための具体化されたビューを見ることができます。これは、検索のみを目的とする場合もあれば、結果セットのサイズと複雑さを軽減する場合もあります。また、クエリ自体の調整を検討することもできます。おそらく、検索の関連する WHERE 句にインデックスを配置したり、テーブルの非正規化を検討したりします。アプリケーションの最後 (膨大なレコードセットの取得) では、単一のレコードが大きく (複数列)、結果セット内のレコード数が多い場合に常に問題が発生する可能性があります。おそらくあなたが求めているのは、ユーザーが待っていると感じないように、アプリケーションからの迅速な応答時間です... そして待っています。私が見て使用した手法は、結果セットを 1) ROWID のレコードセットとして取得し、ディスプレイ上でこれらの ROWID をページングすること、2) シミュレートされた「ページングされた」レコードセットを取得することです。チャンクでレコードセットを取得しています。

于 2012-07-19T08:10:19.480 に答える