Informatica PowerCenter

Informatica PowerCenter is automatically converted to Snowflake. Your exported PowerCenter repository (the mappings, workflows, transformations, and expressions) is read and runnable Snowflake code is produced, so you can migrate data pipelines without rewriting them by hand.

This guide is the translation reference: it explains how each Informatica element maps to Snowflake, what the generated code looks like, and where to review manual follow-ups.

How Informatica concepts map to Snowflake

The following table maps each Informatica concept to its Snowflake or dbt counterpart:

Informatica PowerCenterSnowflake / dbtDescription
WorkflowTask graphThe orchestration order becomes a graph of Snowflake Tasks.
SessionSnowflake Task that runs a MappingEach Session runs its Mapping’s dbt project (or calls its procedure).
WorkletStored procedureA reusable sub-workflow becomes a stored procedure the Task graph calls.
Mappingdbt project or stored procedureThe data flow becomes a standalone dbt project of models or a Snowflake stored procedure (public.m_<Mapping>), depending on output format.
Transformationdbt model or inline CTE / temp tableEach transformation becomes a SQL model or a CTE / temporary table inside the mapping procedure.
Mappletdbt macro or stored procedureA reusable transformation group becomes a dbt macro or a result-set stored procedure (<Folder>_<Def>_<8-hex> on the Scripting path).
Source and Source QualifierStaging model or temporary tableSource reads become stg_ staging models or tmp_sq_<name> temporary tables (flat-file Scripting reads @public.landing_stage/infpc/sources/<Folder>/<Def>/).
TargetMart model or write statementTargets become marts models or the mapping procedure’s INSERT / COPY INTO @public.landing_stage/infpc/targets/<Def>/.
Mapping and Workflow variablescontrol_variables tableVariables and parameters move to a runtime control table.
Expression functionSnowflake SQL functionBuilt-in functions convert to Snowflake equivalents.

Output formats

Two output formats are produced. The generated Snowflake code differs by format, so this guide documents each one separately:

Output formatStatusWhat you getReference
dbt projectGenerally availableEach Mapping becomes a dbt project; Workflows become Task graphs that run those projects.Informatica to dbt
Snowflake ScriptingPreview, in active developmentEach Mapping becomes a Snowflake stored procedure; Workflows call those procedures directly.Informatica to Snowflake Scripting

Several references are shared across both output formats, because the orchestration and the generated Snowflake expressions are the same regardless of format:

Supported components at a glance

The tables below list the Informatica components that are recognized and which output formats support them today. Unlisted components generate an EWI code that flags the component for manual conversion.

Mapping transformations (data flow)

Transformation or elementdbtSnowflake ScriptingNotes
AggregatorAvailableAvailable
ExpressionAvailableAvailableChained LOCAL VARIABLE lagger ports become LAG.
FilterAvailableAvailable
Java TransformationAvailableAvailableXML Custom Transformation (TEMPLATENAME=Java Transformation). Pass-through CTE plus SSC-FDM-INF0045; the Java source isn’t applied.
JoinerAvailableAvailable
Lookup ProcedureAvailableAvailableXML Lookup Procedure. Covers connected lookups (including Use Any Value and Use All Values), unconnected lookups (as a hashed UDF), and flat-file lookups from @public.landing_stage/infpc/sources/….
MappletAvailableAvailableScripting: procedure named <Folder>_<Def>_<8-hex>. A mapplet with more than one input or output emits SSC-EWI-INF0001; a mapplet with no input takes no scope. dbt: macro.
NormalizerAvailableAvailable
RankAvailableAvailable
RouterAvailableAvailable
SequenceAvailableAvailableXML Sequence Generator.
SorterAvailableAvailable
Source DefinitionAvailableAvailableMetadata only; emits no SQL of its own.
Source QualifierAvailableAvailableRelational: temporary table. Scripting flat-file: reads from @public.landing_stage/infpc/sources/<Folder>/<Def>/. When a Source Qualifier has more than one associated source, the generated FROM uses only the first incoming source.
Stored ProcedureAvailableAvailableConnected Normal Stored Procedure emits a UDF CTE (source_datasp_result) plus SSC-EWI-INF0040; this isn’t a Snowflake CALL. Disconnected or midstream Stored Procedure still emits SSC-EWI-INF0001.
Target DefinitionAvailableAvailableRelational: INSERT. Scripting flat-file: COPY INTO @public.landing_stage/infpc/targets/<Def>/.
Union TransformationAvailableAvailableXML Union.
Update StrategyAvailableAvailableUnrecognized dispatch shapes fall back to the dbt output.
App Multi-Group Source QualifierNot yet availableNot yet available
Application Source QualifierNot yet availableNot yet available
Salesforce LookupNot yet availableNot yet available
SQL TransformNot yet availableNot yet availableXML Custom Transformation (TEMPLATENAME=SQL Transform).
Transaction ControlNot yet availableNot yet availableSSC-EWI-INF0001 placeholder. See Mappings and transformations for the Transaction Control example.
XML Source QualifierNot yet availableNot yet available

Workflow elements (control flow)

ElementdbtSnowflake ScriptingNotes
ASSIGNMENTAvailableAvailableSee Workflows and orchestration.
DECISIONAvailableAvailable
EMAILAvailableAvailable
SESSIONAvailableAvailabledbt: EXECUTE DBT PROJECT. Scripting: CALL public.m_<Mapping>(:scope).
STARTAvailableAvailableXML TYPE="Start".
WORKLETAvailableAvailable
CommandNot yet availableNot yet availableSSC-EWI-INF0003 placeholder.
ControlNot yet availableNot yet available
Event WaitNot yet availableNot yet available
TimerNot yet availableNot yet available

These capabilities apply across the workflow, rather than to a single element:

CapabilitydbtSnowflake ScriptingNotes
Session overrides (Pre/Post-SQL, SQL Override)AvailableAvailableSee Workflows and orchestration.
Variable and parameter managementAvailableAvailablecontrol_variables table; see Variables and parameters.

Note

The Snowflake Scripting output format is in active development, so the generated code may change between releases. Most data-flow transformations are converted, but a few are still only converted in the dbt format. See Informatica to Snowflake Scripting for the current status.

Naming and sanitization rules

To keep generated dbt model names and ref() calls valid and aligned, Informatica object names are sanitized: any character outside AZ, az, 09, and the underscore (_) is replaced with an underscore. Letter case is preserved.

Informatica nameGenerated name
SQ_DimCurrencySQ_DimCurrency
m_load-customer datam_load_customer_data
LKP@CurrencyLKP_Currency

dbt models follow the three-tier naming convention: staging models use the stg_raw__ prefix, intermediate models use the int_ prefix, and mart models take the target table name. See Informatica to dbt for details.

In the Snowflake Scripting format, mapping procedures are named public.m_<Mapping> (the m_ prefix is added only when the Mapping name does not already start with it). Mapplets, reusable shared objects, and unconnected Lookup UDFs are named <Folder>_<Def>_<8-hex SHA256 of identity> so two objects with the same Informatica name in different folders can’t collide. Example mapplet: ScriptingCases_AnActiveMapplet_eeb91c86. Example unconnected Lookup UDF: Lookup_SNOW_3702098_m_Lookup_DisconnUnconn_LKPTRANS_222878c0.

Get started

  1. Run a conversion with Snowflake AIM Agent for Data Warehouses.
  2. Choose your output format: Informatica to dbt (generally available) or Informatica to Snowflake Scripting (preview).
  3. Use the shared Expression functions and Data types references as you review the generated code.