Lucene を使用して、コンポーネントに名前と型のインデックスを付けています。一部のコンポーネントはより重要であるため、より大きなブーストが得られます。ただし、ブーストを適切に機能させることができません。ブーストが高いにもかかわらず、いくつかのコンポーネントが後で表示されるようにします (スコアが悪くなります)。
インデックス作成は 1 つのフィールドのみで行われ、そのフィールドのみにブーストを設定したことに注意してください。JavaでLuceneを使用しています。
フィールドの長さとは何の関係もないと思います。同じ名前の (ただしタイプが異なる) コンポーネントが間違ったスコアを取得するのを見てきました。