Skip to main content

SSIS Supported Components

This page lists all SSIS components and their Databricks equivalents. For usage and conversion examples, see SSIS Conversion Examples.


Control Flow (Orchestration) - Supported

SSIS ComponentMicrosoft NameSpark EquivalentNotes
Data Flow TaskMicrosoft.DataFlowTaskSpark SQL temp viewsCore data transformations
Execute SQL TaskMicrosoft.ExecuteSQLTaskSpark SQL statementsSQL execution with parameter mapping
Execute Package TaskMicrosoft.ExecutePackageTaskdbutils.notebook.run()Nested notebook execution
File System TaskMicrosoft.FileSystemTaskdbutils.fs commandsFile operations (copy, move, delete, rename)
Script TaskMicrosoft.ScriptTaskPython code with SQLC#/VB.NET scripts converted to Python/SQL
For Loop ContainerSTOCK:FORLOOPSQL iteration patternIteration with counter
Foreach Loop ContainerSTOCK:FOREACHLOOPSQL wildcard file readingFile/folder iteration
Sequence ContainerSTOCK:SEQUENCEFunction or notebook sectionGrouping tasks
Execute Process TaskMicrosoft.ExecuteProcesssubprocess.run()External process execution
Extensible File TaskExtensibleFileTaskdbutils.fs commandsExtended file operations

Control Flow (Orchestration) - Unsupported

The following components are not supported and require manual conversion:

SSIS ComponentMicrosoft NameReason
Analysis Services Execute DDLMicrosoft.AnalysisServicesExecuteDDLTaskSSAS-specific; migrate to Delta/SQL manually
Analysis Services ProcessingMicrosoft.AnalysisServicesProcessingTaskSSAS-specific; migrate to Delta/SQL manually
Bulk Insert TaskMicrosoft.BulkInsertTaskUse Data Flow Task with JDBC/Delta
Data Profiling TaskMicrosoft.DataProfilingTaskUse Databricks Data Profile UI or custom profiling
FTP TaskMicrosoft.FTPTaskImplement using Python ftplib or dbutils.fs
Message Queue TaskMicrosoft.MessageQueueTaskRequires custom Kafka/Event Hub integration
Send Mail TaskMicrosoft.SendMailTaskUse Databricks job notifications or Python smtplib
Web Service TaskMicrosoft.WebServiceTaskImplement using Python requests
WMI Data Reader TaskMicrosoft.WMIDataReaderTaskWindows-specific; requires alternative monitoring
XML TaskMicrosoft.XMLTaskImplement using Python xml.etree or PySpark XML
Script Task Conversion

Script Task contains C# or VB.NET code bodies that cannot be automatically converted. The converter preserves the logic structure but the implementation must be rewritten in Python manually.


Data Flow (Transformation) - Supported

Sources

SSIS ComponentMicrosoft NameSpark EquivalentNotes
OLE DB SourceMicrosoft.OLEDBSourcespark.read.format("jdbc")Database reads via JDBC
Flat File SourceMicrosoft.FlatFileSourcespark.read.csv() or SQL csv.\path``CSV, delimited, fixed-width files
Excel SourceMicrosoft.ExcelSourcespark.read.format("excel")Excel file reads
Raw File SourceMicrosoft.RawSourcespark.read.format("parquet")SSIS raw files converted to Parquet

Transformations

SSIS ComponentMicrosoft NameSpark EquivalentNotes
AggregateMicrosoft.AggregateGROUP BY with aggregationSum, count, avg, min, max
AuditMicrosoft.AuditAdd columns in SELECTAdd audit columns (timestamp, user, etc.)
Cache TransformMicrosoft.CacheTemp views or CTEsCache data for lookups
Character MapMicrosoft.CharacterMapString functionsupper, lower, etc.
Conditional SplitMicrosoft.ConditionalSplitMultiple WHERE clausesRoute rows by conditions
Copy ColumnMicrosoft.CopyColumnColumn in SELECTDuplicate columns
Data ConversionMicrosoft.DataConvertCAST()Type conversions
Derived ColumnMicrosoft.DerivedColumnCalculated columns in SELECTColumn transformations
LookupMicrosoft.LookupLEFT JOINReference data lookup
MergeMicrosoft.MergeUNIONMerge sorted datasets
Merge JoinMicrosoft.MergeJoinJOINSorted input joins
MulticastMicrosoft.MulticastTemp view reuseSend data to multiple outputs
OLE DB CommandMicrosoft.OLEDBCommandRow-by-row SQL executionRow-level SQL
Percentage SamplingMicrosoft.PercentageSamplingTABLESAMPLEStatistical sampling
PivotMicrosoft.PivotPIVOT clausePivot operations
Row CountMicrosoft.RowCountCOUNT(*)Count rows into variable
Script ComponentMicrosoft.SqlServer.Dts.Pipeline.ScriptComponentHostSQL UDFs or CASE statementsCustom transformations
Slowly Changing DimensionMicrosoft.SCDMERGE with Delta LakeSCD Type 1, 2, 3 patterns
SortMicrosoft.SortORDER BYSorting
Union AllMicrosoft.UnionAllUNION ALLCombine datasets
UnpivotMicrosoft.UnPivotUNPIVOT or STACK()Unpivot

Destinations

SSIS ComponentMicrosoft NameSpark EquivalentNotes
OLE DB DestinationMicrosoft.OLEDBDestinationINSERT INTO SQL or Delta LakeDatabase writes
Flat File DestinationMicrosoft.FlatFileDestinationdf.write.csv() or SQL INSERTCSV/delimited writes
Excel DestinationMicrosoft.ExcelDestinationdf.write.format('excel')Excel writes
Raw File DestinationMicrosoft.RawDestinationdf.write.format('parquet')Parquet writes

Data Flow (Transformation) - Unsupported

SSIS ComponentMicrosoft NameReason
Export ColumnMicrosoft.ExportColumnImplement using custom UDF with file writing
Import ColumnMicrosoft.ImportColumnImplement using custom UDF with file reading
Script Component Conversion

The Script Component contains C# or VB.NET row-by-row processing logic that cannot be automatically converted. The converter identifies the component but the actual C#/VB code must be rewritten as SQL UDFs or CASE statements, then tested thoroughly since row-by-row logic often needs redesign for set-based SQL.