S3 Object的元数据是否非常一致

时间:2012-03-06 14:05:10

标签: amazon-s3 metadata consistency eventual-consistency

S3对象具有覆盖PUTS和DELETES的最终一致性,如此处所述 - http://aws.amazon.com/s3/faqs/#What_data_consistency_model_does_Amazon_S3_employ

这是否适用于S3对象和元数据,或者在写入一致后读取对象的元数据?

3 个答案:

答案 0 :(得分:2)

S3对象(或数据)和元数据都遵循相同的一致性模型。

答案 1 :(得分:0)

来自http://docs.aws.amazon.com/AmazonS3/latest/dev/Introduction.html

  

&#34;对象是存储在Amazon S3中的基本实体。 <强>物件   由对象数据和元数据组成。数据部分是不透明的   亚马逊S3。 &#34;

由于一致性模型是关于对象(而不是对象数据),所以yes元数据也符合模型。

答案 2 :(得分:0)

不,并非总是如此。就像对象数据一样,对象元数据有时最终还是一致的,而不是很一致的。

Documentation说:

  

Amazon S3为新PUTS提供写后读取一致性   请注意,所有区域中S3存储桶中的所有对象均需注意。注意事项   是如果您向键名发出HEAD或GET请求(以查找是否   对象存在)在创建对象之前,Amazon S3提供   最终一致性,以便于写后读取。

注意“警告”。

这意味着您可以观察以下事件序列:

GET /key-prefix/cool-file.jpg 404
PUT /key-prefix/cool-file.jpg 200
GET /key-prefix/cool-file.jpg 404

或这个:

PUT /key-prefix/cool-file.jpg 200
PUT /key-prefix/cool-file.jpg 200 (new content)
GET /key-prefix/cool-file.jpg 200 (old content returned)

不一致的地方。