私は何千ものテーブルを持っており、基本的に次のような名前が付けられています。
Table_key1_key2_key3
次のように構成されています。
ID
TextColumn
テキスト列にはフルテキストインデックスがあり、各テーブルには独自のフルテキストカタログがあります。
ユーザーが一連の(key1、key2、key3)タプルを渡してテキストを検索すると、これらのテーブルのクエリを生成するストアドプロシージャがあります。一連の非同期クエリを実行します。これにより、が検索TextColumn
され、結果がテーブルに書き込まれます。それらがすべて終了したら、上位1000件の一致する結果を選択します。(また、100が終了するたびに結果テーブルを確認し、1000を超える結果がある場合は戻るように、コードを追加しました)
これに伴う問題は、特に一致するものがほとんどない場合は、まだ遅すぎることです...)。非常に多くの行があり、ユーザーは多くの場合、最大5,000(key1、key2、key3)のタプルを選択して検索します。これをさらにスピードアップできる良い方法はありますか?テーブル構造全体などに完全にアクセスできます。