PostgreSQL catalogs #

You can use a PostgreSQL catalog to configure access to a PostgresSQL or compatible database in the following deployments:

Amazon RDS on Amazon Web Services:

Azure Database on Microsoft Azure:

Cloud SQL on Google Cloud:

Configure a catalog #

To create a PostgreSQL catalog, select Catalogs in the main navigation and click Configure a catalog. Click on the PostgreSQL button in the Select a data source screen.

Select a cloud provider #

The Cloud provider configuration is necessary to allow Starburst Galaxy to correctly match catalogs and clusters.

The data source configured in a catalog, and the cluster must operate in the same cloud provider and region for performance and costs reasons.

Define catalog name and description #

The Name of the catalog is visible in Query editor and other clients. It is used to identify the catalog when writing SQL or showing the catalog and nested schemas and tables in client applications.

The name is displayed in Query editor, and when running a SHOW CATALOGS. It is used to fully qualify the name of any table in SQL queries following the catalogname.schemaname.tablename syntax. For example, you can run the following query in the demo cluster without setting any context of catalog or schema.

SELECT * FROM tpch.sf1.nation;

The Description is a short, optional paragraph that provides more details about the catalog than the name alone. It appears in the user interface and can help other users to determine what data can be accessed with the catalog.

Read only #

Switch the Read only checkbox as desired to enable read operations on the data source only, or allow data changes such as inserts, updates and deletes.

Configure the connection #

The connection to the database requires username and password authentication and details to connect to the database server, typically hostname or IP address and port. The following sections detail the setup for the supported cloud providers.

Amazon RDS configuration #

To configure the connection to your database on Amazon RDS you need to provide the following details:

  • RDS database host, use the fully qualified domain name for the server available as Endpoint in the Amazon RDS console under Connectivity & security. Typically dbidentifier.random.regionname.rds.amazonaws.com.
  • RDS database port, port of the server available with endpoint. Typically 5432 for PostgreSQL and 3306 for MySQL, but configurable for your database in the Amazon RDS console under Connectivity - Databse port.
  • Database name, used only for PostgreSQL databases to identify the specific database to connect to.
  • RDS master database username, use the Master username.
  • RDS master database password, use the password for the master user.

The database on Amazon RDS needs to fulfill the following requirements:

  • Configured for Public access, available in the Amazon RDS console for your database in Connectivity - Additional configuration
  • VPC security group configured to allow Starburst Galaxy access. The specific IP address range/CIDR is dependent on your AWS region, and displayed after a Test connection execution. Add it as an inbound rule to allow the range.
  • Database authentication set to Password authentication.

Azure Database configuration #

The database on Azure Database needs to fulfill the following requirements:

  • DB server host, use the fully qualified domain name for the server available as Server name in Essentials, as well as the Connections strings in the Azure Database console.
  • DB server port, port of the server available with endpoint. Typically 5432 for PostgreSQL and 3306 for MySQL.
  • Database name, used only for PostgreSQL databases to identify the specific database to connect to.
  • DB server admin login name, use the Admin username of the Administrator account.
  • DB server admin password, use the password for the user.

The database on Cloud SQL needs to fulfill the following requirements from the Connection security section of the Settings for the database:

  • A firewall rule configured for the Starburst Galaxy IP address range with Start IP and End IP configured with a random Firewall rule name.
  • TLS setting configured for the Minimum TLS version as 1.2

Cloud SQL configuration #

The database on Cloud SQL needs to fulfill the following requirements:

  • Database IP address, use the IP address for the server available as Public IP address in the Cloud SQL console under Connect to this instance.
  • Database port, port of the server available with endpoint. Typically 5432 for PostgreSQL and 3306 for MySQL.
  • Database name, used only for PostgreSQL databases to identify the specific database to connect to.
  • Username, use a configured user with sufficient access.
  • Password, use the password for the user.

The database on Cloud SQL needs to fulfill the following requirements:

  • Configured for Public IP, available in the Cloud SQL console for your database in Connections - Public IP with an Authorized network configured with the CIDR to allow Starburst Galaxy access. The specific IP address range/CIDR is dependent on your Google Cloud region, and displayed after a Test connection execution.
  • Zonal availability set to Single zone.
  • User configured with username and password in Users.

Test the connection #

Once you have configured the connection details, you can use the Test connection button to confirm data access is working. A successful test allows you proceed to save the catalog.

If the test fails, Starburst Galaxy provides detailed diagnostic information that you can use to fix the database configuration in the cloud provider system.

Save the catalog #

Click the Save catalog button, and proceed to add the catalog to a cluster to be able to query the data source.