2017-09-19 16 views

答えて

1

上限はありません。これは、障害が発生した場合でも可用性を高めるための仕様です。

West USをプライマリとし、East USをセカンダリリージョンとするアカウントがあるとします。通常の操作では、それらはお互いに最新の状態になります(複製/光速のために~60msの遅延を除いて)。このシナリオでは、StrongとEventualの整合性には実質的な違いはありません。

障害のシナリオを見てみましょう。自然災害のために、あるいは西アメリカと東米の間の接続が切断されたために、東米がダウンした場合はどうでしょうか。 Azure Cosmos DBデータベースの動作は何ですか?

  1. 西米は、西米と東米が確実に乖離しないように書き込みを停止します。
  2. バインドされたStalenessでは、バインドされたstalenessウィンドウを構成で​​きます。たとえば5分です。西アメリカは5分間書面を受け入れ続け、東米は最長5分かかる可能性があります。東米への接続が回復するまで、5分を越える西日本の書き込みは利用できなくなります。そうすれば東アメリカは追いつき、執筆は再開できる。
  3. 最終的には、米国西部は書き込みを停止することは決してありません。東アメリカがダウンしていなくても、単に切断されていれば(ネットワークパーティション)、それは古くなった読書に役立ちます。再び地域が回復すれば、東アメリカは追いつき、執筆は再開できる。

また、これは障害が発生した場合にのみ発生し、領域が最新である通常の動作ではなく、複製/光遅延の速度を除いて保存されます。

は、さらなる議論のために、我々は、我々はマルチプレイヤーゲームを開発しているためにそれを検討しているカップルの事を持っていた[email protected]

+0

書き込みを停止することによって、すべてが巻き込まれるまで待ち行列に入れられていることを意味しますか?それとも、エラーが戻ってきて再試行する必要がありますか?あなたの返事はとても役に立ちました、ありがとう。 –

+0

エラーが返されます(503 =サービスは利用できません)。アプリケーションから再試行する必要があります。お力になれて、嬉しいです! –

0

最終的な一貫性を期待できる最大時間を中心とするSLAはありません。 Eventual consistency guarantees that in absence of any further writes, the replicas within the group *eventually* converge.

基本的には、このレベルの一貫性を選択すると、プロビジョニングされたスループットなどのさまざまな要因に依存します(どの程度の値を維持するかレプリカが同期しているかどうか)、ドキュメントが更新され照会されている頻度などです。一貫性のための時間枠はアプリケーションにとって重要ではないという振る舞いを選択しています。

大多数の顧客がセッションや制限付きの疎結合を好むため、潜在的な作業負荷(具体的には一貫性がよいと思われる理由)をもっと知りたいのです。

+0

のチームに電子メールを送り、ニーズの広いスペクトルを持っていてください。だから、いくつかのことは、プレーヤーの試合の継続時間に一貫している必要があり、他のものは最終的または境界になる可能性があります。 Afaikには、根本的なインスタンス/シャード/その他の数についての情報があれば最終的な一貫性がどのくらいの時間続くかを計算する方法がありますが、Cosmos DBの概算があれば興味があります私たちのプロジェクトにどのように適合させるのが良いか。おそらく1〜2分かかりますか?日々?週? –

+0

セッションの一貫性は面白く見えますが、私は今のところ私の頭を包み込むことを試みています。 –

+0

私の気持ちは間違いなく数分で、間違いなく数日または数週間であるということです。残念なことに、これについて明確な解答はありませんが、最終的に意味をなさないユースケースに対して独自のテストを行う必要があります。セッションはユースケースの大半には絶対的に理想的です –

関連する問題