# tWritePositionalFields properties for Apache Spark Streaming

These properties are used to configure tWritePositionalFields running in the Spark Streaming Job framework.

The Spark Streaming tWritePositionalFields component belongs to the Processing family.

The streaming version of this component is available in Talend Real Time Big Data Platform and in Talend Data Fabric.

## Basic settings

| Output type | Select the type of the data to be outputted into the target file. The data is<br>byte arrays if you select byte. |
| --- | --- |
| Schema and Edit<br>Schema | A schema is a row description. It defines the number of fields<br>(columns) to be processed and passed on to the next component. When you create a Spark<br>Job, avoid the reserved word line when naming the<br>fields.<br><br>The schema of this component is read-only. You can click<br>Edit schema to view the schema.<br><br>When the output type is String, the read-only single column is messageContent. This column is used to provide strings to the output components<br>such as tJMSOutput.<br><br>When the output type is byte, the read-only single column is serializedValue. This column is used to provide byte arrays to the output<br>components such as tKafkaOutput.<br><br>The output schema and its read-only column can be seen by<br>clicking the Row &gt; Output link to the<br>component that follows in the same Job. The schema is displayed in the Basic settings tab of the Component view |
| Include header | Select this check box to include the column header to the file. |
| Custom encoding | You may encounter encoding issues when you process the stored data. In that<br>situation, select this check box to display the Encoding list.<br><br>Select the encoding from the list or select Custom<br>and define it manually. This field is compulsory for database data handling. The<br>supported encodings depend on the JVM that you are using. For more information, see<br>[https://docs.oracle.com](https://docs.oracle.com/). |
| Formats | Customize the data format of the positional file for each column<br>from the input schema.<br><br><ul> <li> <p> <span>Column</span>: Select the column you          want to customize.</p> </li> <li> <p> <span>Size</span>: Enter the column size.</p> </li> <li> <p> <span>Padding char</span>: Type in between          quotes the padding characters used. A space by default.</p> </li> <li> <p> <span>Alignment</span>: Select the appropriate          alignment parameter.</p> </li> <li> <p> <span>Keep</span>: If the data in the column          or in the field are too long, select the part you want to keep.</p> </li> </ul> |

## Advanced settings

| Advanced separator (for number) | Select this check box to change the separator used for numbers. By default, the thousands separator is a comma (*,*) and the decimal separator is a period (*.*). |
| --- | --- |

## Usage

| **Usage rule** | This component is used as an intermediate step.<br><br>This component, along with the Spark Streaming component Palette it belongs to, appears<br>only when you are creating a Spark Streaming Job.<br><br>Note that in this documentation, unless otherwise explicitly stated, a scenario presents<br>only Standard Jobs, that is to say traditional<br>Talend<br>data<br>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>When using Qubole, add a                                        <span>tS3Configuration</span> to your Job to write                                    your actual business data in the S3 system with Qubole. Without                                        <span>tS3Configuration</span>, this business data is                                    written in the Qubole HDFS system and destroyed once you shut                                    down your cluster.</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/7.3/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/7.3/components/hdfs/thdfsconfiguration-properties-for-apache-spark-batch">tHDFSConfiguration Apache Spark Batch</a> or <a href="https://help.qlik.com/talend/r/en-US/7.3/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. |