Exporting Jobs from Amazon S3 - AWS Snowball Edge Developer Guide

Exporting Jobs from Amazon S3

Your data source for an export job is one or more Amazon S3 buckets. After the data for a job part is moved from Amazon S3 to an AWS Snowball Edge device, you can download a job report. This report alerts you to any objects that failed the transfer to the device. You can find more information in your job's success and failure logs.

You can export any number of objects for each export job, using as many devices as it takes to complete the transfer. Each AWS Snowball Edge device for an export job's job parts is delivered one after another, with subsequent devices shipping to you after the previous job part enters the In transit to AWS status.

When you copy objects into your on-premises data destination from a device using the Amazon S3 Adapter for Snowball or the NFS mount point, those objects are saved as files. If you copy objects into a location that already holds files, any existing files with the same names are overwritten. The export job type is also capable of local storage and compute functionality. This functionality uses the file interface or Amazon S3 Adapter for Snowball to read and write data, and triggers Lambda functions based off of Amazon S3 PUT object API actions running locally on the AWS Snowball Edge device.

When AWS receives a returned device, we completely erase it, following the NIST 800-88 standards.

Important

Don't change, update, or delete the exported Amazon S3 objects until you can verify that all of your contents for the entire job have been copied to your on-premises data destination.

When you create an export job, you can export an entire Amazon S3 bucket or a specific range of objects keys.

Using Export Ranges

When you create an export job in the AWS Snow Family Management Console or with the job management API, you can export an entire Amazon S3 bucket or a specific range of objects keys. Object key names uniquely identify objects in a bucket. If you export a range, you define the length of the range by providing either an inclusive range beginning, an inclusive range ending, or both.

Ranges are UTF-8 binary sorted. UTF-8 binary data is sorted in the following way:

  • The numbers 0–9 come before both uppercase and lowercase English characters.

  • Uppercase English characters come before all lowercase English characters.

  • Lowercase English characters come last when sorted against uppercase English characters and numbers.

  • Special characters are sorted among the other character sets.

For more information about the specifics of UTF-8, see UTF-8 on Wikipedia.

Export Range Examples

Assume that you have a bucket containing the following objects, sorted in UTF-8 binary order:

  • 01

  • Aardvark

  • Aardwolf

  • Aasvogel/apple

  • Aasvogel/banana

  • Aasvogel/cherry

  • Banana

  • Car

Specified range beginning Specified range ending Objects in the range that will be exported
(none) (none) All of the objects in your bucket
(none) Aasvogel

01

Aardvark

Aardwolf

Aasvogel/apple

Aasvogel/banana

Aasvogel/cherry

(none) Aasvogel/banana

01

Aardvark

Aardwolf

Aasvogel/apple

Aasvogel/banana

Aasvogel (none)

Aasvogel/apple

Aasvogel/banana

Aasvogel/cherry

Banana

Car

Aardwolf (none)

Aardwolf

Aasvogel/apple

Aasvogel/banana

Aasvogel/cherry

Banana

Car

Aar (none)

Aardvark

Aardwolf

Aasvogel/apple

Aasvogel/banana

Aasvogel/cherry

Banana

Car

car (none)

No objects are exported, and you get an error message when you try to create the job. Note that car is sorted below Car according to UTF-8 binary values.

Aar Aarrr

Aardvark

Aardwolf