What does read-after-write consistency really mean on new object PUT in S3?

淺唱寂寞╮ 提交于 2020-01-01 07:38:08

问题


Amazon documentation (http://docs.aws.amazon.com/AmazonS3/latest/dev/Introduction.html#ConsistencyModel) states:

"Amazon S3 provides read-after-write consistency for PUTS of new objects in your S3 bucket in all regions with one caveat."

Ignoring the caveat, this means that a client issuing a GET following a PUT for a new object is guaranteed to get the correct result. My question is, would the guarantee also apply if the GET is issued from a different client not the one which did the PUT (assuming of course the GET follows the PUT chronologically)? In other words, is read-after-write consistency simply read-your-write consistency or it works for all clients?

I suspect the answer is that it works globally but can't find a definitive answer.


回答1:


Yes, it would be consistent.

The concept of a 'client' is irrelevant because each API call is independent.

The us-east-1 region (previously known as US-Standard) previously did not have read-after-write consistency, but it is now provided in all regions.




回答2:


I've always assumed that same you, i.e. that read-after-write applies to all clients, not just the client that did the write.

This blog post seems to confirm it (for what its worth), but I also did not find any definitive answer on official AWS docs:

https://shlomoswidler.com/2009/12/read-after-write-consistency-in-amazon.html

What is Read-After-Write Consistency?

Read-after-write consistency tightens things up a bit, guaranteeing immediate visibility of new data to all clients. With read-after-write consistency, a newly created object or file or table row will immediately be visible, without any delays.



来源:https://stackoverflow.com/questions/42957531/what-does-read-after-write-consistency-really-mean-on-new-object-put-in-s3

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!