Can I Create a Snowflake Destination Schema in Advance for Fivetran Syncs?
Question
Can I create a Snowflake destination schema in advance and configure Fivetran to write into it?
Environment
Destination: Snowflake
Answer
Yes, you can create the Snowflake schema in advance, provided the Snowflake role used by Fivetran has the required privileges to use the schema and create, update, and manage the objects required for syncs.
To create the schema in advance:
- Create the target database and schema in Snowflake before running the Fivetran sync.
- Grant the Fivetran destination role access to the database and schema.
- Grant the Fivetran destination role the required object creation and management permissions. For more information, see our Snowflake Destination Setup Guide.
- In Fivetran, go to your connection overview page and click Sync in the top right. Fivetran can then create and maintain its tables inside that schema.
If another Snowflake role needs read access to the synced objects, grant that role access to the database, schema, tables, and views. For example:
GRANT USAGE ON DATABASE <database_name> TO ROLE <reader_role>;
GRANT USAGE ON SCHEMA <database_name>.<schema_name> TO ROLE <reader_role>;
GRANT SELECT ON ALL TABLES IN SCHEMA <database_name>.<schema_name> TO ROLE <reader_role>;
GRANT SELECT ON FUTURE TABLES IN SCHEMA <database_name>.<schema_name> TO ROLE <reader_role>;
GRANT SELECT ON ALL VIEWS IN SCHEMA <database_name>.<schema_name> TO ROLE <reader_role>;
GRANT SELECT ON FUTURE VIEWS IN SCHEMA <database_name>.<schema_name> TO ROLE <reader_role>;