1

Azure Search サービスには 4 つのインデックスがあり、そのうちの 3 つのインデックスは、最高水準点の変更追跡ポリシーを使用して Azure SQL ビュー データ ソースに構成されています。インデクサーは 30 分ごとに実行されます。

一部のドキュメントを直接インデックスにマージしてアップロードする必要があるシナリオがいくつかあります。最初に DB を更新し、次に Azure Search .Net SDK を使用してインデックスを作成します。オブジェクトの配列を MergeOrUpload に渡しています。私の問題は、1 つのレコードを渡すと、インデックスが正しく更新され、更新された検索結果が表示されることです。しかし、複数のレコードを MergeOrUpload しようとすると、インデックスは更新されませんが、次にスケジュールされたインデクサーが実行された後、正常にインデックスが作成されます。MergeOrUpload の後に Success が表示されますが、更新/挿入されたレコードが表示されないことに注意してください。

Azure Search .net SDK から使用する呼び出しを次に示します。

public async Task<DocumentIndexResult> UpsertRecords(string index, object[] records)
        {
         if (index.Equals("MyIndexName",StringComparison.CurrentCultureIgnoreCase))  
            {
            var batch = IndexBatch.MergeOrUpload(records);
            return await custDataIndex.Documents.IndexAsync(batch);
            }
        }
4

0 に答える 0