Python Boto3 Multipart загрузки в ведра в разных зонах - PullRequest
0 голосов
/ 28 мая 2018

Я следовал документации s3 и примеру для загрузки своего большого файла как составного в хранилища amazon s3 с использованием библиотеки boto3.Однако информации в официальной документации для меня было недостаточно.В моем случае у меня есть несколько хранилищ в разных регионах, и я должен загрузить свои части (всего 500 ГБ) в разные хранилища.Я хотел бы увидеть пример того, как загрузить несколько деталей в разные хранилища S3 в разных зонах с помощью библиотеки boto3.Любая информация ценна для меня.Спасибо, что прочитали

документацию boto3

пример boto3

1 Ответ

0 голосов
/ 28 мая 2018

Хорошо, вы, кажется, не понимаете некоторые термины.Давайте определим некоторые термины:

  • Регион: Географическое местоположение, содержащее несколько зон доступности, например, Лондон, Огайо
  • Зона доступности: Aдата-центр (или несколько).Каждый AZ в регионе географически разделен, чтобы обеспечить Высокая доступность .
  • Региональный сервис: Несколько сервисов, включая Amazon S3 является региональная служба .Это означает, что он автоматически копирует данные между AZ.
  • Bucket: Место хранения объектов в Amazon S3.Ведро существует в только в одном регионе .
  • Объект: A файл в ведре.

Сейчас, чтобы ответить на ваши вопросы:

Объект существует только в одном сегменте. Объект не может быть разделен между сегментами.(А так как область существует в области, ее также нельзя разделить на области.)

Если вы хотите реплицировать объекты между областями, используйте Межрегиональная репликация .Это автоматически скопирует объекты из одного сегмента в другое.

Максимальный размер объекта в Amazon S3 составляет 5 ТБ, но вы действительно действительно, не хотите получать такой большой размер.В большинстве приложений с большими данными используется файлов меньшего размера (например, размером 5 МБ).Это позволяет параллельную загрузку между несколькими процессами, что обычно делается в Hadoop.Это также позволяет добавлять новые данные, просто добавляя файлы, а не обновляя существующий файл.(Кстати, вы не можете добавить к объекту S3, вы можете только заменить его.)

Самый простой способ загрузить данные на S3 - использовать команду AWS.Линейный интерфейс (CLI) .

Загрузка нескольких частей - это всего лишь средство загрузки одного объекта путем разбиения его на несколько частей, загрузки каждой части, а затем их соединения.Метод загрузки не связан с фактическими объектами после их загрузки.

Вы всегда должны хранить свои данные рядом с местом их обработки.Таким образом, реплицируйте данные между регионами только в том случае, если они должны обрабатываться в нескольких регионах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...