Skip to main content
This gem runs in .

Overview

In Prophecy, datasets stored in the SQL Warehouse Connection defined in your fabric are accessed using Table gems. Unlike Source and Target gems, Table gems run directly within the data warehouse, eliminating extra orchestration steps and improving performance. Available configurations for Table gems vary based on your SQL warehouse provider. This page explains how to use the Table gem for a Snowflake SQL warehouse, including supported table types, configuration options, and guidance for managing Snowflake tables in your Prophecy pipelines.

Table types

The following table types are supported for Snowflake connections.

Create a new table

Once you create a Table gem, you can reuse the table throughout your project. All created tables appear in the Project tab in the left sidebar. To create a table in your pipeline:
1

Add a table gem to the pipeline

  1. Open your pipeline in the Studio.
  2. Click on Source/Target in the canvas.
  3. Select Table from the dropdown.
  4. Click on the gem to open the configuration.
2

Create a new table

Click + New Table. The gem configuration will depend on the table type:

Gem configuration

Tables

Tables are persistent storage objects used to store structured data in Snowflake.

Source parameters

Target parameters

Views

Views are virtual tables recomputed at runtime from a query.

Source parameters

Target parameters

Every time the pipeline runs, the target view is replaced. This is because the view is recomputed from the underlying query logic each time the pipeline executes. No additional write modes are supported.

Seeds

Seeds are lightweight CSV datasets defined in your project. Seeds are source-only.
Seeds are implemented as dbt seeds under the hood. The CSV data you define is stored in your Prophecy project files and materialized as a table in your Snowflake data warehouse. This table is created in the default database and schema specified in your Snowflake connection.

Reusing and sharing tables

After you create a table in Prophecy, you can reuse its configuration across your entire project. All created tables appear in the Project tab in the left sidebar. To make tables available to other teams, you can share your project as a package in the Package Hub. Other users will be able to use the shared table configuration, provided they have the necessary permissions in Snowflake to access the underlying data.

Limitations

Currently, Snowflake tables do not support:
  • Case-sensitive identifiers.
  • Creating new partitioned tables.
  • Modifying partitioning of existing tables.