Control-M for Snowflake

Snowflake is a cloud-computing platform that enables you to process, analyze, and store your data.

Control-M for Snowflake enables you to do the following:

  • Execute any of the following Snowflake job operations:

    • Execute a Snowflake-supported SQL statement.

    • Copy a queried database and schema into an existing or new file in cloud storage.

    • Copy from an existing table.

    • Create a table, populated by a query, in a specified database and schema.

    • Copy data from a cloud storage location into an existing table in Snowflake.

    • Start or pause an existing Snowpipe.

    • Call an existing procedure and its arguments.

    • Monitor the status of a Snowpipe for a set period of time.

  • Manage Snowflake credentials in a secure connection profile.

  • Connect to any Snowflake endpoint.

  • Introduce all Control-M capabilities to Control-M for Snowflake, including advanced scheduling criteria, complex dependencies, Resource Pools, Lock Resources, and variables.

  • Integrate Snowflake jobs with other Control-M jobs into a single scheduling environment.

  • Monitor the status, results, and output of Snowflake jobs.

  • Attach an SLA job to the Snowflake jobs.

  • Run 50 Snowflake jobs simultaneously per Agent.

Control-M for Snowflake Compatibility

The following table lists the prerequisites that are required to use the Snowflake plug-in, each with its minimum required version.

Component

Version

Control-M/EM

9.0.21.200

Control-M/Agent

9.0.21.200

Control-M Application Integrator

9.0.21.200

Control-M Automation API

9.0.21.200

Control-M for Snowflake is supported on Control-M Web and Control-M Automation API, but not on the Control-M client.

To download the required installation files for each prerequisite, see Obtaining Control-M Installation Files.

Setting up Control-M for Snowflake

This procedure describes how to deploy the Snowflake plug-in, create a connection profile, and define a Snowflake job in Control-M Web and Automation API.

Integration plug-ins released by BMC require an Application Integrator installation. However, these plug-ins are not editable and you cannot import them into Application Integrator. To deploy these integrations to your Control-M environment, import them directly into Control-M with Control-M Automation API.

Before You Begin

  • Create a Snowflake security integration

  • Obtain security integration connection details

  • Obtain the security code

  • Generate a refresh token

  • Verify that Automation API is installed, as described in Automation API Installation.

Begin

  1. Create a temporary directory to save the downloaded files.

  2. Download the relevant plug-in from one of the following download pages in the EPD site:

  3. Install the Snowflake plug-in with the Automation API Provision service:

    1. Log in to the Control-M/EM Server machine as an Administrator and store the downloaded zip file in the one of the following locations:

      • Linux: $HOME/ctm_em/AUTO_DEPLOY

      • Windows: <EM_HOME>\AUTO_DEPLOY

    2. Log in to the Control-M/Agent machine and run the provision image command, as follows:

      • Linux:

        • Snowflake: ctm provision image SNF_plugin.Linux

        • Snowflake IdP: ctm provision image SFI_plugin.Linux

      • Windows:

        • Snowflake: ctm provision image SNF_plugin.Windows

        • Snowflake IdP: ctm provision image SFI_plugin.Windows

  4. Create a Snowflake connection profile in Control-M Web or Automation API, as follows:

  5. Define a Snowflake job in Control-M Web or Automation API, as follows:

To remove this plug-in from an Agent, see Removing a Plug-in. The plug-in ID for Snowflake is SNF092022, and for Snowflake IdP it is SFI122022.

Change Log

The following table provides details about changes that were introduced in new versions of this plug-in:

Plug-in Version

Details

1.0.05

(Snowflake IdP only) Fixed bug in job fields under Show More Options.

1.0.04

  • Added new Run SQL File action in the job, which enables you to upload a file that contains Snowflake-supported SQL commands

  • Added new Load SQL File parameter for this action

1.0.03

(Snowflake IdP only) Added support for Oauth Access Token extensions

1.0.02

  • Added new Snowpipe Load Status action in the job, which monitors the status of a Snowpipe for a set period of time and checks whether the Snowpipe data pipeline action ran successfully

  • Removed Create Snowpipe action

  • Fixed Issue of missing Bearer Token

  • Enabled asynchronous requests

1.0.00

Initial version