私はかなり大きなOracleデータベースを使用するプロジェクトに取り組んでいます(私の質問は他のデータベースにも同様に当てはまりますが)。ユーザーがフィールドのほぼすべての可能な組み合わせを検索できるWebインターフェイスがあります。
これらの検索を高速化するために、ユーザーが一般的に検索すると思われるフィールドとフィールドの組み合わせにインデックスを追加しています。ただし、お客様がこのソフトウェアをどのように使用するかはよくわからないため、作成するインデックスを特定するのは困難です。
スペースは問題ではありません。4テラバイトのRAIDドライブがあり、そのほんの一部しか使用していません。ただし、インデックスが多すぎるとパフォーマンスが低下する可能性があるのではないかと心配しています。これらのインデックスは、行が追加、削除、または変更されるたびに更新する必要があるため、1つのテーブルに数十のインデックスを配置するのは悪い考えだと思います。
では、いくつのインデックスが多すぎると見なされますか?10?25?50?それとも、本当に、本当に一般的で明白なケースをカバーし、他のすべてを無視する必要がありますか?