Amazon S3 гарантирует упорядочивание записи?

Amazon S3 обеспечивает "возможную непротиворечивость" модель, где данные, которые Вы храните, в конечном счете видимы всем клиентам.

Я не могу найти официальную информацию относительно того, гарантируется ли упорядочивание записи или нет. Это существенно важно при создании архитектуры, где клиент мог бы хотеть считать данные прямо после того, как кто-то еще сохранил их.

Если упорядочивание записи сохраняется, я могу легко проверить, полны ли данные при наличии хранилища устройства записи защита (скажите, специальный ключ), и конец операции записи.

Если никакое упорядочивание записи не гарантируется, то у меня есть серьезная проблема, потому что нет никакого способа, которым я могу быть уверен, что могу безопасно считать данные.

Я прочитал статью Werner Vogel о непротиворечивости (http://www.allthingsdistributed.com/2007/12/eventually_consistent.html), где он отмечает, что системы без монотонной непротиворечивости записи известно тверды к программе, но не говорит, гарантирует ли S3 это или нет.

5
задан Jan Rychter 6 July 2010 в 09:05
поделиться

1 ответ

Чтобы ответить на ваш прямой вопрос "Гарантирует ли Amazon S3 порядок записи?", я думаю, что нет. Хотя я бы спросил на форумах AWS, чтобы быть уверенным.

Если вы можете жить с почти идеальной согласованностью, я бы рекомендовал, чтобы записывающее устройство проверяло все файлы перед возвращением успеха. Хотя это не гарантирует, что файл будет доступен всем клиентам, этого достаточно для большинства случаев использования. Лично у меня никогда не было проблем с согласованностью S3 для клиентов, когда я делал это. Следует отметить, что это займет немного больше времени, и вы заплатите немного больше за дополнительные запросы, но в вашем случае это, вероятно, того стоит.

С другой стороны, если вам нужна гарантированная идеальная согласованность, я бы рекомендовал использовать регион, отличный от US Standard. Все регионы, кроме региона US Standard, предлагают "согласованность чтения после записи для PUTS новых объектов и конечную согласованность для PUTS перезаписи и DELETES". Это должно решить вашу проблему для новых записей, но опять же, это будет стоить немного дороже.

Best,

Zach

Developer, LongTail Video

2
ответ дан 14 December 2019 в 18:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: