Starburst Galaxy

  •  Get started

  •  Working with data

  •  Data engineering

  •  Developer tools

  •  Cluster administration

  •  Security and compliance

  •  Troubleshooting

  • Galaxy status

  •  Reference

  • Azure Synapse catalogs #

    Use an Azure Synapse catalog to configure access to an Azure Synapse Analytics service on Microsoft Azure.

    Follow these steps to create a catalog for Azure Synapse:

    1. In the navigation menu, select Data, then Catalogs.
    2. Click Create catalog.
    3. On the Select a data source pane, click the Azure Synapse icon.

    Select a data source

    1. Configure the catalog as prompted in the dialog.
    2. Test the connection.
    3. Connect the catalog.
    4. Set any required permissions.
    5. Add the new catalog to a cluster.

    The following sections provide more detail for creating Azure Synapse catalog connections.

    Define catalog name and description #

    The Catalog name is visible in the query editor and other clients. It is used to identify the catalog when writing SQL or showing the catalog and its nested schemas and tables in client applications.

    The name is displayed in the query editor, and in the output of a SHOW CATALOGS command. 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 sample cluster without first setting the catalog or schema context: SELECT * FROM tpch.sf1.nation;.

    The Description is a short, optional paragraph that provides further details about the catalog. It appears in the Starburst Galaxy user interface and can help other users determine what data can be accessed with the catalog.

    Enter catalog name and description

    Configure the connection #

    Read further to learn about each supported connection method. The following sections detail the setup for the supported cloud providers.

    • Connect directly
      The connection to the database requires a username, password authentication, and the details necessary to connect to the database server, typically hostname or IP address and port.

    • Connect via SSH tunnel
      A connection to the database can be established directly, if the Starburst Galaxy IP range/CIDR is allowed to connect.

      If the database is only accessible inside the virtual private cloud (VPC) of the cloud provider, you can use an SSH tunnel with a bastion host in the VPC.

    Azure Synapse configuration #

    The Azure Synapse instance must fulfill the following requirements:

    • Synapse SQL Endpoint: Find the endpoint in the Azure Portal by navigating to Azure Synapse Analytics, selecting the workspace, and finding the Dedicated SQL Endpoint in the workspace overview.
    • DB server port: port of the Azure endpoint. Typically 1433.
    • Database name: the name of the Synapse SQL pool this catalog provides access to.
    • Username: the SQL username for the Synapse server.
    • Password: the password for the Synapse SQL user.

    The Azure Synapse connection must fulfill the following requirements from the Connection security section of the Settings for the endpoint:

    • 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

      Azure Synapse connection

    Test the connection #

    Once you have configured the connection details, click Test connection to confirm data access is working. If the test is successful, you can save the catalog.

    If the test fails, look over your entries in the configuration fields, correct any errors, and try again. If the test continues to fail, Galaxy provides diagnostic information that you can use to fix the data source configuration in the cloud provider system.

    Connect catalog #

    Click Connect catalog, and proceed to set permissions where you can grant access to certain roles.

    Set permissions #

    This optional step allows you to configure read-only access or full read and write access to the catalog.

    Use the following steps to assign read-only access to all roles:

    1. Select the Read-only catalog switch to grant a set of roles read-only access to the catalog’s schemas, tables, and views.
    2. Next, use the drop-down menu in the Role-level permissions section to specify the roles that have read-only access.
    3. Click Save access controls.

    You can specify read-only access and read-write access separately for different sets of roles. That is, one set of roles can get full read and write access to all schemas, tables, and views in the catalog, while another set of roles gets read-only access.

    Use the following steps to assign read/write access to some or all roles:

    1. Leave the Read-only catalog switch cleared.
    2. In the Role-level permissions section:
      • Expand the drop-down menu in the Roles with read and write access field and select one or more roles to grant read and write access to.
      • Expand the drop-down menu in the Roles with read access field and select one or more roles from the list to grant read-only access to.
    3. Click Save access controls.

      Set permissions for read and write screenshot

    Add to cluster #

    You can add your catalog to a cluster later by editing a cluster. Click Skip to proceed to the catalogs page.

    Use the following steps to add your catalog to an existing cluster or create a new cluster in the same cloud region:

    • In the Add to cluster section, expand the menu in the Select cluster field.
    • Select one or more existing clusters from the drop down menu.
    • Click Create a new cluster to create a new cluster in the same region, and add it to the cluster selection menu.
    • Click Add to cluster to view your new catalog’s configuration.

        Add to cluster

    SQL support #

    The catalog provides read access and write access to data and metadata in the Synapse SQL pool. It supports the following features:

    The following sections provides details for the SQL support with Synapse catalogs.

    Data management details #

    If a WHERE clause is specified, the DELETE operation only works if the predicate in the clause can be fully pushed down to the data source.

    Schema and table management details #

    Synapse-native table structure and table distribution options for CREATE TABLE are not supported.

    In addition, Synapse cannot create tables in serverless pools.

    The catalog does not support renaming tables across multiple schemas. For example, the following statement is supported:

    ALTER TABLE catalog.schema_one.table_one RENAME TO catalog.schema_one.table_two
    

    The following statement attempts to rename a table across schemas, and therefore is not supported:

    ALTER TABLE catalog.schema_one.table_one RENAME TO catalog.schema_two.table_two