tSchemaComplianceCheck for Apache Spark Batch - 7.3


English (United States)
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Real-Time Big Data Platform
Talend Studio
Data Governance > Third-party systems > Data Quality components > Validation components
Data Quality and Preparation > Third-party systems > Data Quality components > Validation components
Design and Development > Third-party systems > Data Quality components > Validation components

These properties are used to configure tSchemaComplianceCheck running in the Spark Batch Job framework.

The Spark Batch tSchemaComplianceCheck component belongs to the Data Quality family.

The component in this framework is available in all subscription-based Talend products with Big Data and Talend Data Fabric.

Basic settings

Base Schema and Edit schema

A schema is a row description. It defines the number of fields (columns) to be processed and passed on to the next component. When you create a Spark Job, avoid the reserved word line when naming the fields.

It describes the structure and nature of your data to be processed as it is.


Built-In: You create and store the schema locally for this component only.


Repository: You have already created the schema and stored it in the Repository. You can reuse it in various projects and Job designs.

Base on default schema

Select this option to carry out all checks on all columns against the base schema.

Custom defined

Select this option to carry out particular checks on particular columns. When this option is selected, the Columns table shows.

Checked Columns

In this table, define what checks are to be carried out on which columns.


Column: Displays the columns names.


Type: Select the type of data each column is supposed to contain. This validation is mandatory for all columns.


Date pattern: Define the expected date format for each column with the data type of Date.


Nullable: Select the check box in an individual column to define the column to be nullable, that is, to allow empty rows in this column to go to the output flow regardless of the base schema definition. To define all columns to be nullable, select the check box in the table header.


Max length: Select the check box in an individual column to verify the data length of the column against the length definition of the base schema. To carry out this verification on all the columns, select the check box in the table header.

Use another schema for compliance check

Define a reference schema as you expect the data to be, in order to reject the non-compliant data.

It can be restrictive on data type, null values, and/or length.

Discard the excess content of column when the actual length is greater than the declared length

With any of the three modes of tSchemaComplianceCheck, select this check box to truncate the data that exceeds the length specified rather than reject it.


This option is applicable only on data of String type.

Advanced settings

Ignore TimeZone when Check Date

Select this check box to ignore the time zone setup upon date check.

Not available when the Check all columns from schema mode is selected.

Treat all empty string as NULL

Select this check box to treat any empty fields in any columns as null values, instead of empty strings.

By default, this check box is selected. When it is cleared, the Choose Column(s) table shows to let you select individual columns.

Global Variables

Global Variables

ERROR_MESSAGE: the error message generated by the component when an error occurs. This is an After variable and it returns a string. This variable functions only if the Die on error check box is cleared, if the component has this check box.

A Flow variable functions during the execution of a component while an After variable functions after the execution of the component.

To fill up a field or expression with a variable, press Ctrl + Space to access the variable list and choose the variable to use from it.

For further information about variables, see Talend Studio User Guide.


Usage rule

This component is used as an intermediate step.

Spark Connection

In the Spark Configuration tab in the Run view, define the connection to a given Spark cluster for the whole Job. In addition, since the Job expects its dependent jar files for execution, you must specify the directory in the file system to which these jar files are transferred so that Spark can access these files:
  • Yarn mode (Yarn client or Yarn cluster):
    • When using Google Dataproc, specify a bucket in the Google Storage staging bucket field in the Spark configuration tab.

    • When using HDInsight, specify the blob to be used for Job deployment in the Windows Azure Storage configuration area in the Spark configuration tab.

    • When using Altus, specify the S3 bucket or the Azure Data Lake Storage for Job deployment in the Spark configuration tab.
    • When using Qubole, add a tS3Configuration to your Job to write your actual business data in the S3 system with Qubole. Without tS3Configuration, this business data is written in the Qubole HDFS system and destroyed once you shut down your cluster.
    • When using on-premise distributions, use the configuration component corresponding to the file system your cluster is using. Typically, this system is HDFS and so use tHDFSConfiguration.

  • Standalone mode: use the configuration component corresponding to the file system your cluster is using, such as tHDFSConfiguration or tS3Configuration.

    If you are using Databricks without any configuration component present in your Job, your business data is written directly in DBFS (Databricks Filesystem).

This connection is effective on a per-Job basis.