Welcome to Zuora Product Documentation

Explore our rich library of product information

Snowflake configuration parameters

Configure a Snowflake source by selecting the event definition, Snowflake connection, and data retrieval mode, and then optionally overriding connection defaults for the run.

After you create a Snowflake connection, configure the Snowflake source operator in the meter to define what data to read and how to run the export.

Name

Use Name to provide a user-friendly name for the operator. This name appears in Meter Designer, Run History, Audit Trail, and error messages.

Example:

Daily Usage Import

Event Definition

Use Event Definition to specify the schema used by downstream operators. The event definition determines field names, field types, and validation rules. Every row returned from Snowflake is mapped into this structure.

Example event definition:

Customer Usage Event

Example schema:

{
  "accountNumber": "string",
  "usageDate": "date",
  "quantity": "number"
}

Connection

Use Connection to select the Snowflake connection used by the source. The connection contains the Snowflake account URL, authentication details, and default role, warehouse, database, and schema values.

Example:

Production Snowflake

Unload Data From

Unload Data From determines how data is retrieved from Snowflake.

Table reads data directly from a Snowflake table. Use this option when the source data already exists in a prepared table, no filtering is required, or the full dataset should be processed.

Example:

CUSTOMER_USAGE

Query reads data by using a custom SQL query. Use this option when you need to filter records, join multiple tables, perform calculations in Snowflake, or support incremental ingestion patterns. For most usage ingestion scenarios, Query is typically the better choice because it lets you limit the exported data to only the required records.

A single Snowflake source supports one query only. You cannot configure multiple independent queries in the same source.If multiple queries return the same schema, combine them into a single query by using UNION ALL. If the queries return different schemas, create separate Snowflake sources or separate meters so they can run and be monitored independently.

Example:

SELECT *
FROM CUSTOMER_USAGE
WHERE DATE(event_time) = CURRENT_DATE()

Advanced Settings

Advanced settings override the defaults configured in the Snowflake connection. All fields are optional.

Role specifies the Snowflake role used when executing the query. Use this when different meters require different Snowflake permissions.

Example:

USAGE_READER_ROLE

Warehouse specifies the Snowflake warehouse used for query execution. The warehouse determines the compute resources available for the export, and larger warehouses generally complete exports faster.

Example:

COMPUTE_WH

Database specifies the database containing the source data and overrides the default database defined in the connection.

Example:

USAGE_DB

Schema specifies the schema containing the table or query objects and overrides the default schema defined in the connection.

Example:

PUBLIC

Partition By is an optional Snowflake expression used when exporting data. Partitioning organizes exported files into logical groups before Mediation reads them. Typical use cases include partitioning by date, region, customer, and product. For smaller datasets, partitioning is often unnecessary.

Example:

DATE(event_time)

Example partition output:

2026-06-01/
2026-06-02/
2026-06-03/

Example configuration

Name: Daily Usage Import
Connection: Production Snowflake
Query:
SELECT
  account_number,
  usage_date,
  quantity
FROM CUSTOMER_USAGE
WHERE DATE(usage_date) = CURRENT_DATE()

Advanced Settings:
Role: USAGE_READER_ROLE
Warehouse: COMPUTE_WH
Database: USAGE_DB
Schema: PUBLIC
Partition By: DATE(usage_date)

Runtime behavior for this example:

  1. A meter run starts.
  2. Snowflake exports matching records to a Zuora-managed S3 staging location.
  3. Mediation reads the exported files.
  4. Each row becomes a pipeline event.
  5. The pipeline processes the events.
  6. The run completes after all exported files have been consumed.