2017-06-16 6 views
1

Azure Searchが提供する一貫性の保証について理解しようとしています。Azureインデックスへの投稿時のデータ整合性検索

シナリオ: のは、私はAzureの検索REST APIに順次文書を掲示していましょう:

  1. DOC1
  2. DOC2
  3. DOC3

質問

  1. 私は、クエリを発行し、DOC3が返されます。インデックスにはdoc1doc2も含まれていますか?たとえば、データ複製がまだ完了していないなどの懸念はありますか?
  2. POSTリクエストが返された場合、投稿されたドキュメントが検索可能であることが100%保証されているため、インデックスを照会するすべてのクライアントによって直ちに検出されますか?
  3. 整合性に関連する動作は、使用するティアによって異なりますか?

答えて

2

1)Azure Searchによって最終的にすべてのドキュメントが表示されますが、読者は順番に表示されます(単調な読み込みではありません)。

2)いいえ。インデックスリクエストからHTTPステータス200が表示された場合、データは耐久性があります(データは失われません)が、検索可能ではありません。負荷に応じて検索するには数秒かかることがあります。

3)すべての層は最終的な一貫性モデルを公開します。データがどのように分割されるかの違いにより、ティア間の典型的なタイミング/順序には若干の違いがあるかもしれませんが、それらは可変なので依存しないでください。

+0

ありがとうございます!それは非常に便利です。 – grg

+1

私は、最終的な一貫性が達成されたことを検出する方法を探しています。クライアントは、投稿したデータを100%確実に見つけることができます。 これを達成するための推奨事項はありますか? 2)で言及したように、保存後に数秒の遅延を追加することができますが、データが検索可能になるのにどれくらい時間がかかりますか? – grg

+0

負荷に応じて検索するのに数秒かかることがあります。質問、なぜデータが検索可能なのかを100%保証する必要があるのですか? –