Введение.
Amazon Simple Storage Service (S3) — это масштабируемая и высокодоступная облачная служба хранения данных, предлагаемая Amazon Web Services (AWS). Он предоставляет разработчикам и предприятиям безопасное, надежное и масштабируемое объектное хранилище. Одной из ключевых особенностей Amazon S3 являются классы хранения, которые позволяют пользователям оптимизировать затраты и производительность в соответствии с их конкретными требованиями. В этой статье мы рассмотрим различные классы хранения, доступные в Amazon S3, и предоставим примеры кода для каждого метода.
- Стандартный класс хранения.
Стандартный класс хранения является вариантом по умолчанию для хранения данных в Amazon S3. Он обеспечивает высокую надежность, доступность и производительность. Этот класс хранилища подходит для часто используемых данных и идеально подходит для приложений, требующих доступа в режиме реального времени.
Пример кода:
import boto3
# Create an S3 client
s3 = boto3.client('s3')
# Upload an object with the Standard storage class
s3.upload_file('my_file.txt', 'my-bucket', 'my_file.txt', ExtraArgs={'StorageClass': 'STANDARD'})
- Класс хранения с интеллектуальным многоуровневым хранением.
Класс хранения с интеллектуальным многоуровневым доступом предназначен для оптимизации затрат за счет автоматического перемещения объектов между двумя уровнями доступа: частым доступом и нечастым доступом. Этот класс хранения подходит для данных с неизвестными или меняющимися схемами доступа.
Пример кода:
import boto3
# Create an S3 client
s3 = boto3.client('s3')
# Upload an object with the Intelligent-Tiering storage class
s3.upload_file('my_file.txt', 'my-bucket', 'my_file.txt', ExtraArgs={'StorageClass': 'INTELLIGENT_TIERING'})
- Класс хранения Standard-IA (нечастый доступ):
Класс хранения Standard-IA предназначен для данных, к которым обращаются реже, но при необходимости требуется быстрый доступ. Он предлагает более низкие затраты на хранение по сравнению со стандартным классом хранения, но за получение доступа к данным взимается плата.
Пример кода:
import boto3
# Create an S3 client
s3 = boto3.client('s3')
# Upload an object with the Standard-IA storage class
s3.upload_file('my_file.txt', 'my-bucket', 'my_file.txt', ExtraArgs={'StorageClass': 'STANDARD_IA'})
- Класс хранения One Zone-IA.
Класс хранения One Zone-IA аналогичен классу хранения Standard-IA, но хранит данные в одной зоне доступности. Он предоставляет более дешевый вариант для редко используемых данных, который не требует такого же уровня доступности, как класс хранения Standard-IA.
Пример кода:
import boto3
# Create an S3 client
s3 = boto3.client('s3')
# Upload an object with the One Zone-IA storage class
s3.upload_file('my_file.txt', 'my-bucket', 'my_file.txt', ExtraArgs={'StorageClass': 'ONEZONE_IA'})
- Класс хранилища Glacier:
Класс хранилища Glacier предназначен для долгосрочного архивного хранения данных. Он предлагает самые низкие затраты на хранение, но имеет более длительное время извлечения по сравнению с другими классами хранения. Данные в классе хранилища Glacier хранятся в архивах и могут быть получены с помощью различных вариантов извлечения.
Пример кода:
import boto3
# Create an S3 client
s3 = boto3.client('s3')
# Upload an object with the Glacier storage class
s3.upload_file('my_file.txt', 'my-bucket', 'my_file.txt', ExtraArgs={'StorageClass': 'GLACIER'})