Amazon Redshift is a cloud-native data warehouse from AWS. It has a Massively Parallel Processing framework that automatically distributes data and the query load across every node available in a cluster. This course explains how Redshift distributes table data, how keys are used inside tables, and the importance of distribution styles.
- Understand the key concepts of data distribution
- Learn about the three types of distribution styles
- Understand the difference between distribution keys and sort keys
This course is intended for database administrators or anyone who wants to enhance their knowledge of Amazon Redshift.
To get the most from this course, you should have a basic understanding of Amazon Redshift.
As an example of how to use distribution keys, let's consider a food delivery service using Redshift to track customer shipments.
In the Redshift cluster, there are three tables; orders, drivers, and customers.
The orders table contains information about completed orders.
The drivers table has profiles for each driver. It is a fairly static table.
The customers table contains customer profiles that include demographic data.
I need to figure out the best way to distribute the tables for optimum performance.
For the orders table, if I use a distribution style of KEY, I'll be able to join it with other tables as well as run queries about orders.
The drivers table is small and doesn't really change. Giving it a distribution style of ALL means that, when doing lookups on each node, data will not have to be redistributed.
The customers table could probably be set to AUTO. This means it would start as ALL and then eventually become EVEN. However, if I know that the size of the customers table will be large, it would be just as easy to set it to EVEN and be done with it.
Stephen is the AWS Certification Specialist at Cloud Academy. His content focuses heavily on topics related to certification on Amazon Web Services technologies. He loves teaching and believes that there are no shortcuts to certification but it is possible to find the right path and course of study.
Stephen has worked in IT for over 25 years in roles ranging from tech support to systems engineering. At one point, he taught computer network technology at a community college in Washington state.
Before coming to Cloud Academy, Stephen worked as a trainer and curriculum developer at AWS and brings a wealth of knowledge and experience in cloud technologies.
In his spare time, Stephen enjoys reading, sudoku, gaming, and modern square dancing.