Studio ​
The Studio resource lets you manage AWS EMR Studios for developing and running data analytics applications. EMR Studios provide a collaborative environment for data scientists and data engineers to create, manage, and share notebooks.
Minimal Example ​
Create a basic EMR Studio with essential properties.
ts
import AWS from "alchemy/aws/control";
const emrStudio = await AWS.EMR.Studio("basicEmrStudio", {
WorkspaceSecurityGroupId: "sg-0123456789abcdef0",
DefaultS3Location: "s3://my-emr-studio-bucket/",
SubnetIds: ["subnet-0123456789abcdef0"],
Name: "BasicEMRStudio",
ServiceRole: "EMRStudioServiceRole",
VpcId: "vpc-0123456789abcdef0",
EngineSecurityGroupId: "sg-0abcdef0123456789"
});
Advanced Configuration ​
Configure an EMR Studio with additional options for better security and identity management.
ts
const advancedEmrStudio = await AWS.EMR.Studio("advancedEmrStudio", {
WorkspaceSecurityGroupId: "sg-0123456789abcdef0",
DefaultS3Location: "s3://my-emr-studio-advanced-bucket/",
SubnetIds: ["subnet-0123456789abcdef0"],
Name: "AdvancedEMRStudio",
ServiceRole: "EMRStudioServiceRole",
VpcId: "vpc-0123456789abcdef0",
EngineSecurityGroupId: "sg-0abcdef0123456789",
Description: "An advanced EMR Studio with enhanced security settings.",
EncryptionKeyArn: "arn:aws:kms:us-west-2:123456789012:key/abcd1234-a123-456a-a12b-a123b4cd56ef",
TrustedIdentityPropagationEnabled: true,
AuthMode: "SAML",
IdpAuthUrl: "https://idp.example.com/auth",
IdpRelayStateParameterName: "state",
IdcUserAssignment: "user@example.com"
});
Custom Identity Configuration ​
Create an EMR Studio configured for custom identity management with SAML authentication.
ts
const customIdentityEmrStudio = await AWS.EMR.Studio("customIdentityEmrStudio", {
WorkspaceSecurityGroupId: "sg-0123456789abcdef0",
DefaultS3Location: "s3://my-emr-studio-custom-bucket/",
SubnetIds: ["subnet-0123456789abcdef0"],
Name: "CustomIdentityEMRStudio",
ServiceRole: "EMRStudioServiceRole",
VpcId: "vpc-0123456789abcdef0",
EngineSecurityGroupId: "sg-0abcdef0123456789",
AuthMode: "SAML",
IdpAuthUrl: "https://idp.example.com/auth",
IdpRelayStateParameterName: "state"
});
Secure Configuration with IAM Policy ​
Set up an EMR Studio with a specific IAM policy for enhanced security.
ts
const secureEmrStudio = await AWS.EMR.Studio("secureEmrStudio", {
WorkspaceSecurityGroupId: "sg-0123456789abcdef0",
DefaultS3Location: "s3://my-emr-studio-secure-bucket/",
SubnetIds: ["subnet-0123456789abcdef0"],
Name: "SecureEMRStudio",
ServiceRole: "EMRStudioServiceRole",
VpcId: "vpc-0123456789abcdef0",
EngineSecurityGroupId: "sg-0abcdef0123456789",
Tags: [
{ Key: "Environment", Value: "Production" },
{ Key: "Project", Value: "DataAnalytics" }
],
UserRole: "EMRStudioUserRole",
IdcUserAssignment: "user@example.com"
});