Amazon Elastic MapReduce

2020/11/23 - Amazon Elastic MapReduce - 9 new api methods

Changes  Add API support for EMR Studio, a new notebook-first IDE for data scientists and data engineers with single sign-on, Jupyter notebooks, automated infrastructure provisioning, and job diagnosis.

UpdateStudioSessionMapping (new) Link ¶

Note

The Amazon EMR Studio APIs are in preview release for Amazon EMR and are subject to change.

Updates the session policy attached to the user or group for the specified Amazon EMR Studio.

See also: AWS API Documentation

Request Syntax

client.update_studio_session_mapping(
    StudioId='string',
    IdentityId='string',
    IdentityName='string',
    IdentityType='USER'|'GROUP',
    SessionPolicyArn='string'
)
type StudioId

string

param StudioId

[REQUIRED]

The ID of the EMR Studio.

type IdentityId

string

param IdentityId

The globally unique identifier (GUID) of the user or group. For more information, see UserId and GroupId in the AWS SSO Identity Store API Reference . Either IdentityName or IdentityId must be specified.

type IdentityName

string

param IdentityName

The name of the user or group to update. For more information, see UserName and DisplayName in the AWS SSO Identity Store API Reference . Either IdentityName or IdentityId must be specified.

type IdentityType

string

param IdentityType

[REQUIRED]

Specifies whether the identity to update is a user or a group.

type SessionPolicyArn

string

param SessionPolicyArn

[REQUIRED]

The Amazon Resource Name (ARN) of the session policy to associate with the specified user or group.

returns

None

CreateStudioSessionMapping (new) Link ¶

Note

The Amazon EMR Studio APIs are in preview release for Amazon EMR and are subject to change.

Maps a user or group to the Amazon EMR Studio specified by StudioId , and applies a session policy to refine Studio permissions for that user or group.

See also: AWS API Documentation

Request Syntax

client.create_studio_session_mapping(
    StudioId='string',
    IdentityId='string',
    IdentityName='string',
    IdentityType='USER'|'GROUP',
    SessionPolicyArn='string'
)
type StudioId

string

param StudioId

[REQUIRED]

The ID of the Amazon EMR Studio to which the user or group will be mapped.

type IdentityId

string

param IdentityId

The globally unique identifier (GUID) of the user or group from the AWS SSO Identity Store. For more information, see UserId and GroupId in the AWS SSO Identity Store API Reference . Either IdentityName or IdentityId must be specified.

type IdentityName

string

param IdentityName

The name of the user or group. For more information, see UserName and DisplayName in the AWS SSO Identity Store API Reference . Either IdentityName or IdentityId must be specified.

type IdentityType

string

param IdentityType

[REQUIRED]

Specifies whether the identity to map to the Studio is a user or a group.

type SessionPolicyArn

string

param SessionPolicyArn

[REQUIRED]

The Amazon Resource Name (ARN) for the session policy that will be applied to the user or group. Session policies refine Studio user permissions without the need to use multiple IAM user roles.

returns

None

CreateStudio (new) Link ¶

Note

The Amazon EMR Studio APIs are in preview release for Amazon EMR and are subject to change.

Creates a new Amazon EMR Studio.

See also: AWS API Documentation

Request Syntax

client.create_studio(
    Name='string',
    Description='string',
    AuthMode='SSO'|'IAM',
    VpcId='string',
    SubnetIds=[
        'string',
    ],
    ServiceRole='string',
    UserRole='string',
    WorkspaceSecurityGroupId='string',
    EngineSecurityGroupId='string',
    DefaultS3Location='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
type Name

string

param Name

[REQUIRED]

A descriptive name for the Amazon EMR Studio.

type Description

string

param Description

A detailed description of the Studio.

type AuthMode

string

param AuthMode

[REQUIRED]

Specifies whether the Studio authenticates users using single sign-on (SSO) or IAM. Amazon EMR Studio currently only supports SSO authentication.

type VpcId

string

param VpcId

[REQUIRED]

The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate with the Studio.

type SubnetIds

list

param SubnetIds

[REQUIRED]

A list of subnet IDs to associate with the Studio. The subnets must belong to the VPC specified by VpcId . Studio users can create a Workspace in any of the specified subnets.

  • (string) --

type ServiceRole

string

param ServiceRole

[REQUIRED]

The IAM role that will be assumed by the Amazon EMR Studio. The service role provides a way for Amazon EMR Studio to interoperate with other AWS services.

type UserRole

string

param UserRole

[REQUIRED]

The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies.

type WorkspaceSecurityGroupId

string

param WorkspaceSecurityGroupId

[REQUIRED]

The ID of the Amazon EMR Studio Workspace security group. The Workspace security group allows outbound network traffic to resources in the Engine security group, and it must be in the same VPC specified by VpcId .

type EngineSecurityGroupId

string

param EngineSecurityGroupId

[REQUIRED]

The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId .

type DefaultS3Location

string

param DefaultS3Location

The default Amazon S3 location to back up EMR Studio Workspaces and notebook files. A Studio user can select an alternative Amazon S3 location when creating a Workspace.

type Tags

list

param Tags

A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters.

  • (dict) --

    A key-value pair containing user-defined metadata that you can associate with an Amazon EMR resource. Tags make it easier to associate clusters in various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. For more information, see Tag Clusters .

    • Key (string) --

      A user-defined key, which is the minimum required information for a valid tag. For more information, see Tag .

    • Value (string) --

      A user-defined value, which is optional in a tag. For more information, see Tag Clusters .

rtype

dict

returns

Response Syntax

{
    'StudioId': 'string',
    'Url': 'string'
}

Response Structure

  • (dict) --

    • StudioId (string) --

      The ID of the Amazon EMR Studio.

    • Url (string) --

      The unique Studio access URL.

DescribeStudio (new) Link ¶

Note

The Amazon EMR Studio APIs are in preview release for Amazon EMR and are subject to change.

Returns details for the specified Amazon EMR Studio including ID, Name, VPC, Studio access URL, and so on.

See also: AWS API Documentation

Request Syntax

client.describe_studio(
    StudioId='string'
)
type StudioId

string

param StudioId

[REQUIRED]

The Amazon EMR Studio ID.

rtype

dict

returns

Response Syntax

{
    'Studio': {
        'StudioId': 'string',
        'StudioArn': 'string',
        'Name': 'string',
        'Description': 'string',
        'AuthMode': 'SSO'|'IAM',
        'VpcId': 'string',
        'SubnetIds': [
            'string',
        ],
        'ServiceRole': 'string',
        'UserRole': 'string',
        'WorkspaceSecurityGroupId': 'string',
        'EngineSecurityGroupId': 'string',
        'Url': 'string',
        'CreationTime': datetime(2015, 1, 1),
        'DefaultS3Location': 'string',
        'Tags': [
            {
                'Key': 'string',
                'Value': 'string'
            },
        ]
    }
}

Response Structure

  • (dict) --

    • Studio (dict) --

      The Amazon EMR Studio details.

      • StudioId (string) --

        The ID of the EMR Studio.

      • StudioArn (string) --

        The Amazon Resource Name (ARN) of the EMR Studio.

      • Name (string) --

        The name of the EMR Studio.

      • Description (string) --

        The detailed description of the EMR Studio.

      • AuthMode (string) --

        Specifies whether the Studio authenticates users using single sign-on (SSO) or IAM.

      • VpcId (string) --

        The ID of the VPC associated with the EMR Studio.

      • SubnetIds (list) --

        The list of IDs of the subnets associated with the Amazon EMR Studio.

        • (string) --

      • ServiceRole (string) --

        The name of the IAM role assumed by the Amazon EMR Studio.

      • UserRole (string) --

        The name of the IAM role assumed by users logged in to the Amazon EMR Studio.

      • WorkspaceSecurityGroupId (string) --

        The ID of the Workspace security group associated with the Amazon EMR Studio. The Workspace security group allows outbound network traffic to resources in the Engine security group and to the internet.

      • EngineSecurityGroupId (string) --

        The ID of the Engine security group associated with the Amazon EMR Studio. The Engine security group allows inbound network traffic from resources in the Workspace security group.

      • Url (string) --

        The unique access URL of the Amazon EMR Studio.

      • CreationTime (datetime) --

        The time the Amazon EMR Studio was created.

      • DefaultS3Location (string) --

        The default Amazon S3 location to back up Amazon EMR Studio Workspaces and notebook files.

      • Tags (list) --

        A list of tags associated with the Amazon EMR Studio.

        • (dict) --

          A key-value pair containing user-defined metadata that you can associate with an Amazon EMR resource. Tags make it easier to associate clusters in various ways, such as grouping clusters to track your Amazon EMR resource allocation costs. For more information, see Tag Clusters .

          • Key (string) --

            A user-defined key, which is the minimum required information for a valid tag. For more information, see Tag .

          • Value (string) --

            A user-defined value, which is optional in a tag. For more information, see Tag Clusters .

ListStudios (new) Link ¶

Note

The Amazon EMR Studio APIs are in preview release for Amazon EMR and are subject to change.

Returns a list of all Amazon EMR Studios associated with the AWS account. The list includes details such as ID, Studio Access URL, and creation time for each Studio.

See also: AWS API Documentation

Request Syntax

client.list_studios(
    Marker='string'
)
type Marker

string

param Marker

The pagination token that indicates the set of results to retrieve.

rtype

dict

returns

Response Syntax

{
    'Studios': [
        {
            'StudioId': 'string',
            'Name': 'string',
            'VpcId': 'string',
            'Description': 'string',
            'Url': 'string',
            'CreationTime': datetime(2015, 1, 1)
        },
    ],
    'Marker': 'string'
}

Response Structure

  • (dict) --

    • Studios (list) --

      The list of Studio summary objects.

      • (dict) --

        Details for an Amazon EMR Studio, including ID, Name, VPC, and Description. The details do not include subnets, IAM roles, security groups, or tags associated with the Studio.

        • StudioId (string) --

          The ID of the Amazon EMR Studio.

        • Name (string) --

          The name of the Amazon EMR Studio.

        • VpcId (string) --

          The ID of the Virtual Private Cloud (Amazon VPC) associated with the Amazon EMR Studio.

        • Description (string) --

          The detailed description of the EMR Studio.

        • Url (string) --

          The unique access URL of the Amazon EMR Studio.

        • CreationTime (datetime) --

          The time when the Amazon EMR Studio was created.

    • Marker (string) --

      The pagination token that indicates the next set of results to retrieve.

GetStudioSessionMapping (new) Link ¶

Note

The Amazon EMR Studio APIs are in preview release for Amazon EMR and are subject to change.

Fetches mapping details for the specified Amazon EMR Studio and identity (user or group).

See also: AWS API Documentation

Request Syntax

client.get_studio_session_mapping(
    StudioId='string',
    IdentityId='string',
    IdentityName='string',
    IdentityType='USER'|'GROUP'
)
type StudioId

string

param StudioId

[REQUIRED]

The ID of the Amazon EMR Studio.

type IdentityId

string

param IdentityId

The globally unique identifier (GUID) of the user or group. For more information, see UserId and GroupId in the AWS SSO Identity Store API Reference . Either IdentityName or IdentityId must be specified.

type IdentityName

string

param IdentityName

The name of the user or group to fetch. For more information, see UserName and DisplayName in the AWS SSO Identity Store API Reference . Either IdentityName or IdentityId must be specified.

type IdentityType

string

param IdentityType

[REQUIRED]

Specifies whether the identity to fetch is a user or a group.

rtype

dict

returns

Response Syntax

{
    'SessionMapping': {
        'StudioId': 'string',
        'IdentityId': 'string',
        'IdentityName': 'string',
        'IdentityType': 'USER'|'GROUP',
        'SessionPolicyArn': 'string',
        'CreationTime': datetime(2015, 1, 1),
        'LastModifiedTime': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • SessionMapping (dict) --

      The session mapping details for the specified Amazon EMR Studio and identity, including session policy ARN and creation time.

      • StudioId (string) --

        The ID of the Amazon EMR Studio.

      • IdentityId (string) --

        The globally unique identifier (GUID) of the user or group.

      • IdentityName (string) --

        The name of the user or group. For more information, see UserName and DisplayName in the AWS SSO Identity Store API Reference .

      • IdentityType (string) --

        Specifies whether the identity mapped to the Studio is a user or a group.

      • SessionPolicyArn (string) --

        The Amazon Resource Name (ARN) of the session policy associated with the user or group.

      • CreationTime (datetime) --

        The time the session mapping was created.

      • LastModifiedTime (datetime) --

        The time the session mapping was last modified.

ListStudioSessionMappings (new) Link ¶

Note

The Amazon EMR Studio APIs are in preview release for Amazon EMR and are subject to change.

Returns a list of all user or group session mappings for the EMR Studio specified by StudioId .

See also: AWS API Documentation

Request Syntax

client.list_studio_session_mappings(
    StudioId='string',
    IdentityType='USER'|'GROUP',
    Marker='string'
)
type StudioId

string

param StudioId

The ID of the Amazon EMR Studio.

type IdentityType

string

param IdentityType

Specifies whether to return session mappings for users or groups. If not specified, the results include session mapping details for both users and groups.

type Marker

string

param Marker

The pagination token that indicates the set of results to retrieve.

rtype

dict

returns

Response Syntax

{
    'SessionMappings': [
        {
            'StudioId': 'string',
            'IdentityId': 'string',
            'IdentityName': 'string',
            'IdentityType': 'USER'|'GROUP',
            'SessionPolicyArn': 'string',
            'CreationTime': datetime(2015, 1, 1)
        },
    ],
    'Marker': 'string'
}

Response Structure

  • (dict) --

    • SessionMappings (list) --

      A list of session mapping summary objects. Each object includes session mapping details such as creation time, identity type (user or group), and Studio ID.

      • (dict) --

        Details for an Amazon EMR Studio session mapping. The details do not include the time the session mapping was last modified.

        • StudioId (string) --

          The ID of the Amazon EMR Studio.

        • IdentityId (string) --

          The globally unique identifier (GUID) of the user or group from the AWS SSO Identity Store.

        • IdentityName (string) --

          The name of the user or group. For more information, see UserName and DisplayName in the AWS SSO Identity Store API Reference .

        • IdentityType (string) --

          Specifies whether the identity mapped to the Studio is a user or a group.

        • SessionPolicyArn (string) --

          The Amazon Resource Name (ARN) of the session policy associated with the user or group.

        • CreationTime (datetime) --

          The time the session mapping was created.

    • Marker (string) --

      The pagination token that indicates the next set of results to retrieve.

DeleteStudioSessionMapping (new) Link ¶

Note

The Amazon EMR Studio APIs are in preview release for Amazon EMR and are subject to change.

Removes a user or group from an Amazon EMR Studio.

See also: AWS API Documentation

Request Syntax

client.delete_studio_session_mapping(
    StudioId='string',
    IdentityId='string',
    IdentityName='string',
    IdentityType='USER'|'GROUP'
)
type StudioId

string

param StudioId

[REQUIRED]

The ID of the Amazon EMR Studio.

type IdentityId

string

param IdentityId

The globally unique identifier (GUID) of the user or group to remove from the Amazon EMR Studio. For more information, see UserId and GroupId in the AWS SSO Identity Store API Reference . Either IdentityName or IdentityId must be specified.

type IdentityName

string

param IdentityName

The name of the user name or group to remove from the Studio. For more information, see UserName and DisplayName in the AWS SSO Identity Store API Reference . Either IdentityName or IdentityId must be specified.

type IdentityType

string

param IdentityType

[REQUIRED]

Specifies whether the identity to delete from the Studio is a user or a group.

returns

None

DeleteStudio (new) Link ¶

Note

The Amazon EMR Studio APIs are in preview release for Amazon EMR and are subject to change.

Removes an Amazon EMR Studio from the Studio metadata store.

See also: AWS API Documentation

Request Syntax

client.delete_studio(
    StudioId='string'
)
type StudioId

string

param StudioId

[REQUIRED]

The ID of the Amazon EMR Studio.

returns

None