In this lab, you will load data from your choice of S3 bucket or DynamoDB table into a running Redshift cluster. You will need to create an IAM role that provides access to the S3 bucket or DynamoDB table and apply it to the Redshift cluster. Experience with creating S3 buckets or DynamoDB tables will be useful.
Successfully complete this lab by achieving the following learning objectives:
- Prepare the Source Data
Download the appropriately formatted sample data.
If using an S3 bucket, download the CSV-formatted redshift-data.csv and upload to a newly created S3 bucket with a name of your choosing. Please note, the bucket name must be unique.
If using a DynamoDB table, download the JSON-formatted redshift-data.json and load into a DynamoDB table with a name of your choosing.
- Create IAM Role
Create an IAM role with the appropriate permissions for your source type:
AmazonS3ReadOnlyAccessfor an S3 bucket or
AmazonDynamoDBReadOnlyAccessfor a DynamoDB table.
Once the role is created, add it to your Redshift cluster.
- Load the Data
Connect to the Redshift cluster and create a table to receive the imported data making sure the columns match those of the source data. Once the table is created, use the
COPYcommand to load the data.
Please note the ARN of the IAM role needs to be surrounded by single quotes.