Rules and Guidelines for Mappings on the Spark Engine
Rules and Guidelines for Mappings on the Spark Engine
Consider the following run-time differences on the Spark engine:
Set the optimizer level to none or minimal if a mapping validates but fails to run. If you set the optimizer level to use cost-based or semi-join optimization methods, the Data Integration Service ignores this at run-time and uses the default.
The run-time engine does not honor the early projection optimization method in all cases. If the Data Integration Service removes the links between unused ports, the run-time engine might reconnect the ports.
When you use the auto optimizer level, the early selection optimization method is enabled if the mapping contains any data source that supports pushing filters to the source on the Spark or Databricks Spark engines. For more information about optimizer levels, see the
Informatica® Developer Mapping Guide
.
In a Hadoop environment, sources that have data errors in a column result in a null value for the column. In the native environment, the Data Integration Service does not process the rows that have data errors in a column.
When you cancel a mapping that reads from a flat file source, the file copy process that copies flat file data to HDFS may continue to run. The Data Integration Service logs the command to kill this process in the Hive session log, and cleans up any data copied to HDFS. Optionally, you can run the command to kill the file copy process.
When the Spark engine runs a mapping, it processes jobs on the cluster using HiveServer2 in the following cases:
The mapping writes to a target that is a Hive table bucketed on fields of type char or varchar.
The mapping reads from or writes to Hive transaction-enabled tables.
The mapping reads from or writes to Hive tables where column-level security is enabled.
The mapping writes to a Hive target and is configured to create or replace the table at run time.