フルテキスト インデックスが作成されたテーブルに大量のレコードを挿入しようとしています。変更追跡を に設定しましたauto
。
レコードは、一度に通常約 50,000 の数で、別のテーブルから挿入されます。SQL Server 2008 では、完了までに 5 秒ほどかかります。しかし、2005 年のライブ環境で実行すると、10 分以上かかります。
実行プランを見ると、フルテキスト追跡テーブルのクラスター化インデックスへの挿入が問題になっているようです。主キー列は でuniqueidentifier
割り当てられnewsequentialid()
ます。しかし、2008 年は で 1 回のClustered Index Mergeを行いましたがfulltext_index_docidstatus
、2005 年は で 50,000 回のClustered Index Insertfulltext_index_map
を行いました。
残念ながら、サーバーをアップグレードすることは現時点ではオプションではありません。変更追跡をオフにすると問題は解決しますが、人口を自分で管理するのはうまくいかないので、これは本当にやりたくありません。変更の追跡は、フルテキスト インデックスに表示される新しいレコードを取得するための最速の方法のようであり、優先事項です。
変更追跡を有効にしたまま、これを回避する方法はありますか?