1

インデックスを使用するとパフォーマンスが大幅に向上するという話をよく耳にしますが、パフォーマンスが低下することもあります。

メモリを使用するだけでなく、どのようにパフォーマンスを低下させることができますか?

特定のテーブルへの書き込み時間を最適化したいが、読み取り時間を気にしない場合、インデックス (PK 以外) を使用しない方がよいでしょうか?

4

2 に答える 2

4

書き込みと更新では、インデックス付きの値を作成または修正する必要があります。したがって、テーブルに多数のインデックスがある場合、これらは遅くなる可能性があります。読み取り時間をまったく気にしない場合は、インデックスを使用しないでください。

ただし、優れたインデックスは読み取りパフォーマンスを大幅に向上させますが、書き込みパフォーマンスはわずかに低下させるだけです。

于 2013-04-08T13:41:15.483 に答える
3

そうです -- 関心があるのが書き込みだけである場合は、インデックスを使用しないでください。どのインデックスでも、書き込みが遅くなります。

インデックスは、読み取りパフォーマンスを向上させるように設計されています。インデックスの一般的な考え方は、データを見つけるためにテーブル全体をスキャンする必要がなく、データベース エンジンがより迅速にアクセスできるように、頻繁に読み取られるデータを格納することです。トレードオフは、インデックス付きデータをテーブルに書き込むたびに、インデックスも更新する必要があることです。したがって、インデックスは読み取りパフォーマンスを向上させますが、書き込みパフォーマンスを低下させます。

于 2013-04-08T13:40:27.327 に答える