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.
  • Integrate Snowflake jobs with other Control-M jobs into a single scheduling environment.
  • Monitor the status, results, and output of Snowflake jobs in the Monitoring domain.
  • Attach an SLA job to your Snowflake jobs.
  • Introduce all Control-M capabilities to Control-M for Snowflake including advanced scheduling criteria, complex dependencies, Resource Pools, Lock Resources, and variables.
  • 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 Control-M client.

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

Setting up the API Connection with Snowflake

To set up the API connection with Snowflake and enable the use of the Control-M for Snowflake plug-in, you must perform several setup tasks, as described in Setting-Up-a-Snowflake-API-Connection.

Setting up Control-M for Snowflake

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

Warning

Note

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 using Control-M Automation API.

Before You Begin

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 via one of the following methods:
    • (9.0.21 or higher) Use 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 (within several minutes, the job type appears in Control-M Web):
        • Linux: $HOME/ctm_em/AUTO_DEPLOY
        • Windows: <EM_HOME>\AUTO_DEPLOY
      2. Log in to the Control-M/Agent machine and run one of the following provision image commands:
        • 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
    • (9.0.20.200 or lower) Use the Automation API Deploy service, as described in deploy jobtype.
  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:
Warning

Note

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.02

  • New Snowpipe Load Status action added 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.
  • Create Snowpipe action removed
  • Issue of missing Bearer Token fixed.
  • Asynchronous requests enabled.

1.0.04

New Run SQL File action added in the job, which enables you to upload a file that contains Snowflake-supported SQL commands.
New Load SQL File added parameter for this action. 

1.0.05

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

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*

Control-M