# tVerifyEmail properties for Apache Spark Batch

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

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

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

## Basic settings

| Properties | Description |
| --- | --- |
| Schema | <ul> <li> <p>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 <kbd>line</kbd> when naming the            fields.</p> </li> <li> <p> <span>Built-In</span>: You create and store the schema locally for this component                only.</p> </li> <li> <p> <span>Repository</span>: You have already created the schema and stored it in the                Repository. You can reuse it in various projects and Job designs.</p> </li> </ul> |
| Edit Schema | Click Edit schema to make changes to<br>the schema. If you make changes, the schema automatically becomes built-in.<br><br>The output schema of tVerifyEmail has different read-only<br>columns depending on the options you select in the component Basic<br>settings view. Read-only output columns include:<br><br><br>VerificationLevel: provides you with the verification<br>status of the processed email addresses as the following:<br><br>-*VALID*: means that the email address comply with the defined<br>rule.<br><br>-*INVALID*: means that the email address does not comply with the<br>defined rule.<br><br>-*CORRECTED*: means that the input email does not comply with the<br>defined rule and has been corrected by using the content of the selected columns. This<br>column is available only when you select the Use column<br>content option in the LOCAL Part Options<br>section.<br><br>-*VERIFIED*: means that the email address does exist at the domain.<br>This column is available only when you select the Check with mail<br>server callback option.<br><br>-*REJECTED*: means that the email address does not exist at the domain.<br>This column is available only when you select the Check with mail<br>server callback option.<br><br><br>Suggested\_Email: provides you with a suggested content<br>for the email part before the @ sign. The email string is built up from the columns you<br>select from the Use column content view. |
| Column to validate | Select from the list the column you want to validate with tVerifyEmail. |
| Check the entire email with regular expression | Select this check box if you want to match the complete email address against a specific<br>regular expression.<br><br><br>Complete regular expression: enter the regular expression<br>against which you want to match email addresses.<br><br>This match is done as a first step to optimize the matching process and exclude addresses<br>that have problems before going any further to match the local and domain parts of email<br>addresses. |
| LOCAL Part Options | Fields in this section will vary according to what option you select. "LOCAL part" in an<br>email address refers to the string before the @ sign.<br><br>-Use regular expression: enter in the Pattern field the expression against which you want to check the<br>local part of the email address.<br><br>-Use simplified pattern: enter in the<br>Pattern field the simplified pattern against which you<br>want to check the local part of the email address. Select the Show<br>syntax of simplified pattern option to display the syntax to use for simplified<br>patterns. For more information about the syntax, see [Simplified pattern syntax for tVerifyEmail](https://help.qlik.com/talend/r/en-US/8.0/components/email-validation/simplified-pattern-syntax-for-tverifyemail).<br><br>-Use column content: use the fields in this view to<br>decide the content against which you want to check the local part of the email. If the local<br>part does not match what you have defined, it will be rewritten by using the content of the<br>fields.<br><br>-Enable case-sensitive pattern matching: select this<br>check box to enable a case sensitive pattern matching of the local part of email addresses.<br>You can use case sensitive pattern matching with each of the above options. |
| DOMAIN Part Options | Fields in this view will vary according to what option you select.<br><br>-Check the Top-level Domains and the following ones:<br>select this check box to verify the part of the email address which follows the last dot.<br>You can use the Additional Top-level Domains table to add<br>additional top-level domains against which you want to validate email addresses.<br><br>-Check domains with a black list: select this option to<br>verify the domains you define in the Domain list table as<br>black listed.<br><br>-Check domains with a white list: select this option to<br>verify the domains you define in the Domain List table as<br>white listed. |

## Global Variables

| Variables | Description |
| --- | --- |
| Global Variables | ERROR\_MESSAGE: the error message generated by the<br>component when an error occurs. This is an After variable and it returns a string. This<br>variable functions only if the Die on error checkbox is<br>cleared, if the component has this checkbox.<br><br>A Flow variable functions during the execution of a component<br>while an After variable functions after the execution of the component.<br><br>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<br>it.<br><br>For more information about variables, see [Using contexts and variables](https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/contexts-and-variables). |

## Usage

| Usage guidance | Description |
| --- | --- |
| **Usage rule** | This component is used as an intermediate step.<br><br>This component, along with the Spark Batch component Palette it belongs to,<br>appears only when you are creating a Spark Batch Job.<br><br>Note that in this documentation, unless otherwise explicitly stated, a<br>scenario presents only Standard Jobs, that is to<br>say traditional<br>Talend<br>data integration Jobs. |
| Spark Connection | In the Spark<br>Configuration tab in the Run<br>view, define the connection to a given Spark cluster for the whole Job. In<br>addition, since the Job expects its dependent jar files for execution, you must<br>specify the directory in the file system to which these jar files are<br>transferred so that Spark can access these files:<br><br><ul> <li> <div> <span>Yarn mode</span> (Yarn client or Yarn cluster):<ul> <li> <p>When using Google Dataproc, specify a bucket in the                                            <span>Google Storage staging bucket</span>                                        field in the <span>Spark configuration</span>                                        tab.</p> </li> <li> <p>When using HDInsight, specify the blob to be used for Job                                        deployment in the <span>Windows Azure Storage                                            configuration</span> area in the <span>Spark                                            configuration</span> tab.</p> </li> <li>When using Altus, specify the S3 bucket or the Azure                                    Data Lake Storage for Job deployment in the <span>Spark                                        configuration</span> tab.</li> <li> <p>When using on-premises distributions, use                                        the configuration component corresponding to the file system                                        your cluster is using. Typically, this system is HDFS and so                                        use <a href="https://help.qlik.com/talend/r/en-US/8.0/components/hdfs/thdfsconfiguration">tHDFSConfiguration</a>.</p> </li> </ul> </div> </li> <li> <p> <span>Standalone mode</span>: use the                            configuration component corresponding to the file system your cluster is                            using, such as <a href="https://help.qlik.com/talend/r/en-US/8.0/components/hdfs/thdfsconfiguration-properties-for-apache-spark-batch">tHDFSConfiguration Apache Spark Batch</a> or <a href="https://help.qlik.com/talend/r/en-US/8.0/components/amazon-s3/ts3configuration-properties-for-apache-spark-batch">tS3Configuration Apache Spark Batch</a>.</p> <p>If you are using Databricks without any configuration component present                            in your Job, your business data is written directly in DBFS (Databricks                            Filesystem).</p> </li> </ul><br><br>This connection is effective on a per-Job basis. |