AWS Snowball — это решение для физической транспортировки данных, предоставляемое Amazon Web Services (AWS). Он разработан, чтобы помочь клиентам безопасно и быстро передавать большие объемы данных в автономном режиме. Устройства Snowball – это надежные портативные устройства хранения данных, выпускаемые в двух вариантах: Snowball и Snowball Edge.
- Импорт данных в Snowball:
Чтобы импортировать данные в Snowball, вам необходимо создать задание в Консоли управления AWS. Ниже приведен пример создания задания импорта Snowball с использованием AWS SDK для Python (Boto3):
import boto3
# Create a Snowball client
snowball_client = boto3.client('snowball')
# Create an import job
response = snowball_client.create_job(
JobType='IMPORT',
Resources={
'S3Resources': [
{
'BucketArn': 'arn:aws:s3:::my-bucket',
'KeyRange': {
'BeginMarker': 'path/to/start',
'EndMarker': 'path/to/end'
}
}
]
},
SnowballCapacityPreference='T100',
Notification={
'SnsTopicArn': 'arn:aws:sns:us-west-2:123456789012:my-topic',
'JobStatesToNotify': [
'NEW',
'IMPORTING',
'IMPORT_COMPLETE',
'IMPORT_FAILED'
],
'NotifyAll': True
}
)
# Print the job ID
print(response['JobId'])
- Экспорт данных из Snowball:
Чтобы экспортировать данные из Snowball, вы можете создать задание экспорта. Вот пример использования AWS SDK для Python (Boto3):
import boto3
# Create a Snowball client
snowball_client = boto3.client('snowball')
# Create an export job
response = snowball_client.create_job(
JobType='EXPORT',
Resources={
'S3Resources': [
{
'BucketArn': 'arn:aws:s3:::my-bucket',
'KeyRange': {
'BeginMarker': 'path/to/start',
'EndMarker': 'path/to/end'
}
}
]
},
SnowballCapacityPreference='T100',
Notification={
'SnsTopicArn': 'arn:aws:sns:us-west-2:123456789012:my-topic',
'JobStatesToNotify': [
'NEW',
'EXPORTING',
'EXPORT_COMPLETE',
'EXPORT_FAILED'
],
'NotifyAll': True
}
)
# Print the job ID
print(response['JobId'])
- Проверка статуса задания.
Вы можете использовать методdescribe_job
, чтобы проверить статус задания Snowball. Вот пример использования AWS SDK для Python (Boto3):
import boto3
# Create a Snowball client
snowball_client = boto3.client('snowball')
# Get the job status
response = snowball_client.describe_job(JobId='JOB_ID')
# Print the job status
print(response['JobMetadata']['JobState'])