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:
- A meter run starts.
- Snowflake exports matching records to a Zuora-managed S3 staging location.
- Mediation reads the exported files.
- Each row becomes a pipeline event.
- The pipeline processes the events.
- The run completes after all exported files have been consumed.