S3 Utilities

This module contains Enums and helper methods related to S3.

sagemaker.s3.parse_s3_url(url)

Returns an (s3 bucket, key name/prefix) tuple from a url with an s3 scheme. :param url: :type url: str

Returns:
A tuple containing:
str: S3 bucket name str: S3 key
Return type:tuple
class sagemaker.s3.S3Uploader

Bases: object

Contains static methods for uploading directories or files to S3.

static upload(local_path, desired_s3_uri, kms_key=None, session=None)

Static method that uploads a given file or directory to S3.

Parameters:
  • local_path (str) – A local path to a file or directory.
  • desired_s3_uri (str) – The desired S3 uri to upload to.
  • kms_key (str) – The KMS key to use to encrypt the files.
  • session (sagemaker.session.Session) – Session object which manages interactions with Amazon SageMaker APIs and any other AWS services needed. If not specified, the estimator creates one using the default AWS configuration chain.
Returns:

The S3 uri of the uploaded file(s).

static upload_string_as_file_body(body, desired_s3_uri=None, kms_key=None, session=None)

Static method that uploads a given file or directory to S3.

Parameters:
  • body (str) – String representing the body of the file.
  • desired_s3_uri (str) – The desired S3 uri to upload to.
  • kms_key (str) – The KMS key to use to encrypt the files.
  • session (sagemaker.session.Session) – AWS session to use. Automatically generates one if not provided.
Returns:

The S3 uri of the uploaded file(s).

Return type:

str

class sagemaker.s3.S3Downloader

Bases: object

Contains static methods for downloading directories or files from S3.

static download(s3_uri, local_path, kms_key=None, session=None)

Static method that downloads a given S3 uri to the local machine.

Parameters:
  • s3_uri (str) – An S3 uri to download from.
  • local_path (str) – A local path to download the file(s) to.
  • kms_key (str) – The KMS key to use to decrypt the files.
  • session (sagemaker.session.Session) – Session object which manages interactions with Amazon SageMaker APIs and any other AWS services needed. If not specified, the estimator creates one using the default AWS configuration chain.
static read_file(s3_uri, session=None)

Static method that returns the contents of an s3 uri file body as a string.

Parameters:
  • s3_uri (str) – An S3 uri that refers to a single file.
  • session (sagemaker.session.Session) – AWS session to use. Automatically generates one if not provided.
Returns:

The body of the file.

Return type:

str

static list(s3_uri, session=None)

Static method that lists the contents of an S3 uri.

Parameters:
  • s3_uri (str) – The S3 base uri to list objects in.
  • session (sagemaker.session.Session) – AWS session to use. Automatically generates one if not provided.
Returns:

The list of S3 URIs in the given S3 base uri.

Return type:

[str]