SnowConvert AI - Informatica PowerCenter - dbt output¶
This page describes the dbt output format for Informatica PowerCenter: how SnowConvert AI converts Mappings into dbt projects and Workflows into Snowflake Task graphs that run them. For the concept overview and supported-component matrix, see the Informatica PowerCenter overview. For the alternative output, see Informatica to Snowflake Scripting.
How a Mapping becomes a dbt project¶
SnowConvert AI converts each Mapping into a standalone dbt project with a three-tier model architecture.
| Layer | Materialization | Purpose |
|---|---|---|
models/staging/ | View | Clean, type-safe access to source data referenced in sources.yml. Generated from Source Qualifier and Source Definition transformations. |
models/intermediate/ | Ephemeral | Transformation logic from the original Mapping. Not persisted to the database. Generated from Expression, Joiner, Filter, Lookup, and other transformations. |
models/marts/ | Incremental or Table | Business-ready data models that correspond to Target Definitions. Uses incremental materialization with a merge strategy when an Update Strategy transformation is present. |
Each Mapping produces this project structure:
Important
Before deploying, replace the YOUR_SCHEMA and YOUR_DB placeholders in sources.yml and profiles.yml with your actual Snowflake schema and database names.
Data flow components¶
SnowConvert AI converts each Mapping transformation into a dbt model. The following transformations are supported. For a before/after example of each, see Mappings and transformations.
| Informatica transformation | Category | dbt output | Naming pattern |
|---|---|---|---|
| Source Qualifier | Source | Staging model | stg_raw__{source_name} |
| Source Definition | Source | Staging model | stg_raw__{source_name} |
| Expression | Transformation | Intermediate model | int_{transformation_name} |
| Filter | Transformation | Intermediate model | int_{transformation_name} |
| Joiner | Transformation | Intermediate model | int_{transformation_name} |
| Lookup (connected) | Transformation | Intermediate model | int_{transformation_name} |
| Lookup (unconnected) | Transformation | Intermediate model | int_{transformation_name} |
| Aggregator | Transformation | Intermediate model | int_{transformation_name} |
| Router | Transformation | Intermediate model | int_{transformation_name} |
| Sorter | Transformation | Intermediate model | int_{transformation_name} |
| Union | Transformation | Intermediate model | int_{transformation_name} |
| Normalizer | Transformation | Intermediate model | int_{transformation_name} |
| Rank | Transformation | Intermediate model | int_{transformation_name} |
| Sequence Generator | Transformation | Intermediate model | int_{transformation_name} |
| Update Strategy | Transformation | Intermediate model + incremental mart | int_{transformation_name} |
| Stored Procedure | Transformation | Intermediate model | int_{transformation_name} |
| Mapplet | Reuse | dbt macro | macros/{mapplet_name}.sql |
| Target Definition | Destination | Mart model | {target_name} |
Note
Unlisted Mapping transformations generate an EWI code that flags the transformation for manual conversion. For a before/after example of each supported transformation, see Mappings and transformations.
Control flow components¶
Informatica Workflows define orchestration: which Sessions run, in what order, and with what variable context. SnowConvert AI converts a Workflow into a graph of Snowflake Tasks linked by AFTER dependencies, and converts each Worklet into a stored procedure that the graph calls.
| Element | Conversion target | Notes |
|---|---|---|
| Workflow | Task graph | A root Task plus one Task per element, chained with AFTER. |
| Start | Root Task (SELECT 1) | Entry point of the graph; no AFTER clause. |
| Session | Task running EXECUTE DBT PROJECT | Runs the Session’s Mapping as a dbt project. |
| Session overrides | Applied in the dbt project | Pre/Post-SQL become model hooks; a SQL Override replaces the source query. |
| Worklet | Stored procedure called with CALL | A reusable sub-workflow. |
| Decision, Assignment, and Email tasks | Inline scripting in the Task | Conditions, variable assignments, and notifications. |
| Parameter files | Loaded into control_variables at runtime | .txt and .xml formats are supported. |
For the generated SQL and an example of each element, see Workflows and orchestration.
Note
Unlisted Workflow elements (for example, Timer and Command tasks) are kept as a commented stub and marked with an EWI for manual conversion.
Variable management¶
SnowConvert AI manages Informatica variables and parameters through a table-driven system generated in the etl_configuration/ folder. User-defined variables become dbt project variables ({{ var('name') }}) in the models, and a shared control_variables table tracks their values at runtime so orchestration can read and update them.
For the control_variables table, the supporting UDFs and procedures, parameter files, and variable scope, see Variables and parameters.