Last Updated: 2024-01-03
Amazon S3 is a cloud-based storage solution provided by Amazon Web Services (AWS).
It is designed to store and manage large amounts of data in a scalable and secure manner. It is one of the main underlying technologies used to create data lakes based on cloud object storage.
In this tutorial, you will learn how to configure a catalog in Starburst Galaxy that connects to Amazon S3 object storage.
Once you've completed this tutorial, you will be able to:
Starburst tutorials are designed to get you up and running quickly by providing bite-sized, hands-on educational resources. Each tutorial explores a single feature or topic through a series of guided, step-by-step instructions.
As you navigate through the tutorial you should follow along using your own Starburst Galaxy account. This will help consolidate the learning process by mixing theory and practice.
You're going to begin by signing in to Starburst Galaxy and setting your role to begin the process of connecting your AWS S3 datasource.
This is a quick step, but an important one.
Sign into Starburst Galaxy in the usual way. If you have not already set up an account, you can do that here.
Your current role is listed in the top right-hand corner of the screen.
Adding a new Amazon S3 catalog follows the same process as adding other data sources in Starburst Galaxy. This is one of the main ways that Starburst Galaxy is used to connect to data lakes.
The steps below will show you how to start the process of configuring a new catalog.
Create a new catalog for your Amazon S3 data source.
Starburst Galaxy allows the creation of catalogs for a number of different data sources. In this case, you are going to create a new catalog in the Amazon S3 category.
The catalog needs both a name and description. This ensures that you can find it later.
When you connect Starburst Galaxy to a new data source, it is necessary to undergo an authentication process. This helps ensure that you are connecting the right data source and that you have the appropriate permissions.
Starburst Galaxy allows you to configure several different authentication methods when creating a new catalog. This lets you connect to data sources of different types.
Use this option if you have already worked with your cloud security engineer to create an IAM cross account role configuration with Starburst Galaxy.
Use this option if your cloud security engineer has given you an AWS Access Key\Secret Key pair to use for authentication.
Starburst Galaxy uses a metastore to keep track of the location of your data when it is added to the data lake, in this case to Amazon S3.
You have three options when choosing a metastore. Take some time to consider which is best for you then proceed with the steps corresponding to the metastore of your choice.
Starburst Galaxy allows you to use three different types of metastore with Amazon S3:
The steps required to set up each metastore differ.
Starburst Galaxy includes its own metastore, which can be used to easily store metadata. Using this option is often the simplest metadata management solution.
The choice of metastore is completely decoupled from the choice of storage option, allowing you to mix and match.
This will allow you to create external tables outside of the default S3 bucket.
This will allow you to write data into external tables outside of the default S3 bucket.
Starburst Galaxy also allows you to use AWS Glue as a metastore. This is sometimes a good option for certain users.
The choice of metastore is completely decoupled from the choice of storage option, allowing you to mix and match.
This will allow you to create external tables outside of the default S3 bucket.
This will allow you to write data into external tables outside of the default S3 bucket.
Starburst Galaxy also allows you to use the Hive Metastore. This is sometimes a good option for certain users.
The choice of metastore is completely decoupled from the choice of storage option, allowing you to mix and match.
This will allow you to create external tables outside of the default S3 bucket.
This will allow you to write data into external tables outside of the default S3 bucket.
Table formats control the way that data is stored. These include popular modern, open table formats like Iceberg or Delta Lake, or older table formats like Hive.
Choose the default table format that fits your use case. In many cases, the best option is Iceberg, and Starburst Galaxy is designed to take advantage of its many enhanced features.
Use the radio buttons to select the default table format. For most users, we recommend using Iceberg.
Every new catalog connection includes a test before you connect it. This helps to ensure that you have input the correct credentials and allows you to quickly fix any problems before actually connecting.
You're almost there! Time to test the connection and then complete the process of creating your new Amazon S3 catalog.
Starburst Galaxy allows you to configure your catalog in a number of ways regarding access controls. The most important of these involves granting write access or restricting the catalog to read-only access.
Take some time to consider whether you require write access, or whether read-only access will be sufficient.
Select the appropriate read access for your situation.
At this point, you can either add the new catalog to a cluster, or choose to skip this and connect it later.
Congratulations! You have reached the end of this tutorial, and the end of this stage of your journey.
You're all set! Now you can query the data in your Amazon S3 data lake.
At Starburst, we believe in continuous learning. This tutorial provides the foundation for further training available on this platform, and you can return to it as many times as you like. Future tutorials will make use of the concepts used here.
Starburst has lots of other tutorials to help you get up and running quickly. Each one breaks down an individual problem and guides you to a solution using a step-by-step approach to learning.
Visit the Tutorials section to view the full list of tutorials and keep moving forward on your journey!