Lucene 検索インデックスを並べて実行するため、アプリケーションのほとんどのエンティティにシリアル番号を追加する必要があります。
進行中のポーリング プロセスを実行したり、アプリケーションでインデクサーを手動で実行したりする必要はなく、次のことを考えています。
Created
のデフォルト値を持つ列を追加しますGETUTCDATE()
。Modified
のデフォルト値を持つ列を追加しますGETUTCDATE()
。- 更新先
ON UPDATE
のテーブルにトリガーを追加します(これは、UPDATE が実行されたときに発生しますか? つまり、後で個別に更新するのではなく、SQL クエリに追加しますか?)Modified
GETUTCDATE()
SET [Modified] = GETUTCDATE()
- トリガーは私の
ON UPDATE
Lucene インデクサーを呼び出してそのインデックスを更新します (これはxp_cmdshell
おそらく呼び出しである必要がありますが、新しいプロセスを開始する代わりにプロセスにメッセージを送信する方法はありますか? 名前付きパイプを使用できると聞きましたが、どのようにSproc またはトリガー内から名前付きパイプを使用しますか? (もちろん、「SQL Server 名前付きパイプ」を検索すると、無関係な結果が得られます)。
これは問題ないように聞こえますか?また、小さな副次的な問題を解決するにはどうすればよいでしょうか?