В бакет S3 можно сохранять неограниченное количество объектов, состоящие из данных файла и метаданных. Это могут быть файлы любого типа (изображения, резервные копии, данные, фильмы и т.д.), однако размер обычного файла, который можно загрузить в бакет, не должен превышать 32 ГБ. Для файлов большего размера следует использовать метод мультипартовой загрузки и хранения. Для комфортной загрузки файла объемом свыше 1 ГБ лучше использовать AWS S3 CLI или AWS S3 REST API.
Загрузка из Панели LinxCloud
Чтобы загрузить объект нужно выбрать бакет через раздел «Бакеты» сервиса «Объектное хранилище»:
Примечание
Для загрузки папок с помощью Панели LinxCloud их нужно перенести в окно загрузки, используя функцию Drag&Drop. Для загрузки файлов их нужно перетащить или выбрать при помощи кнопки «Выбрать файлы»(функция перетаскивания возможна только для браузеров Chrome и Firefox).
S3 загружает все файлы и подпапки из добавляемой папки в бакет, после назначается ключевое имя объекта, состоящее из имени загруженного файла и самой папки(имена ключей содержат имя папки в качестве префикса). Например, если загружается папка с именем /images, содержащая два файла sample1.jpg и sample2.jpg, S3 имена ключей будут: images/sample1.jpg и images/sample2.jpg. Панель LinxCloud отображает только ту часть имени ключа, которая следует за последним «/». Например, в папке изображений объекты images/sample1.jpg и images/sample2.jpg отображаются как sample1.jpg и sample2.jpg.
S3 заменит существующий объект при загрузке объекта с таким же ключевым именем.
Загрузка из S3 CLI
В S3 CLI существует несколько способов загрузки объектов:
Команда, копирующая файл в указанный бакет и задающая ключ:
aws s3 cp test.txt s3://mybucket/test2.txt --endpoint-url https://hb.bizmrg.com
Чтобы оптимизировать загрузку файлов из локального каталога можно применить синхронизацию объектов, ключи которых будут автоматически созданы после завершения загрузки объектов в указанный бакет.
В случае, если в бакете уже существуют объекты, то синхронизации подлежат файлы:
- Размер которых отличается от размера объекта S3
- Время последнего изменения локального файла новее, чем время последнего изменения объекта S3
- Локальный файл не существует в указанном бакете
aws s3 sync <локальный_путь> s3://<имя_бакета> --endpoint-url https://hb.bizmrg.com
Подробнее о возможностях копирования и перемещения объектов и файлов можно прочитать в официальной документации S3 CLI.