整合性による挙動の違い
オブジェクトストレージへの書き込み操作に対する読み込みの結果には、「書き込み後の読み込み整合性」と「結果整合性」の2種類があります。
「書き込み後の読み込み整合性」と「結果整合性」の違い
| 「書き込み後の読み込み整合性」のある読み込み | 「結果整合性」のある読み込み |
|---|---|
| 古いデータを読み込まない | 古いデータを読み込むことがある |
| 読み込み時間が長くなることがある | 読み込み時間が短い |
| 読み込み性能が小さくなることがある | 読み込み性能は最大 |
書き込み後の読み込み整合性
オブジェクトの新規作成には「書き込み後の読み込み整合性」が適用されます。
動作例
利用者Aの書き込み(①)完了後に、利用者Bの書き込み(②)が完了しています。このあとの読み込み(③と④)は、必ず②の内容が読み込まれます。

注意事項
- オブジェクト名に対するHEADまたはGETのリクエストは、「結果整合性」が適用されます。
- オブジェクト名に対するHEADまたはGETのリクエストは、オブジェクト名が既に使用されているか調べるために利用できます。
結果整合性
- オブジェクトの上書きや削除は「結果整合性」が適用されます。
- オブジェクトの上書きや削除後の読み込み結果では、最新の内容が反映されず、古いデータや別のユーザーによる変更結果が返される可能性があります。
- 壊れたデータや部分的なデータは、返されません。
動作例
複数の利用者が同じオブジェクトに書き込んだ場合の動作例を以下に示します。
書き込みの途中で読み込みが発生した場合
利用者Bの書き込み(②)の途中で、利用者Aによる読み込み(③)が発生します。
この場合、利用者Aの読み込み(③)の結果は①または②になります。また、経過時間によっては結果が返らない場合もあります。

書き込みのタイミングが重複した場合
利用者Aの書き込み(①)の途中で、利用者Bの書き込み(②)が発生します。
この場合、書き込みの結果は①か②のいずれになるかは保証されません。
利用者Aと利用者Bの読み込み(③と④)の結果は、①または②のいずれかになる可能性があります。また、経過時間によっては結果が返らない場合もあります。

注意事項
- 同じオブジェクトに対して複数の書き込みが同時に行われた場合
最新のタイムスタンプを持つリクエストが優先されます。
利用者Aの書き込み(①)完了後に、利用者Bの書き込み(②)が完了しています。このあとの読み込み(③と④)の結果は経過時間によって①または②になります。

フィードバック
サービス利用中のトラブルは、サポート窓口にお願いします。
お役に立ちましたか?