# tFileInputJSON properties for Apache Spark Streaming (deprecated)

Availability-note[Deprecated](https://help.talend.com/r/en-US/Cloud/labels-on-talend-help-center/availability-deprecated)

This content is deprecated.

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

Information noteDeprecation: Spark Streaming is deprecated beginning with the R2026-09 release. Use Spark Structured Streaming instead.

The Spark Streaming tFileInputJSON component belongs to the File family.

This component is available in Talend Real-Time Big Data Platform and Talend Data Fabric.

## Basic settings

| Properties | Description |
| --- | --- |
| Define a storage configuration<br>component | Select the configuration component to be used to provide the configuration<br>information for the connection to the target file system such as HDFS.<br><br>If you leave this check box clear, the target file system is the local<br>system.<br><br>The configuration component to be used must be present in the same Job.<br>For example, if you have dropped a tHDFSConfiguration component in the Job, you can select it to write<br>the result in a given HDFS system. |
| Property type | <ul> <li> <p>Either <span>Built-In</span> or <span>Repository</span>. </p> </li> <li> <p> <span>Built-In</span>: No property data stored centrally.</p> </li> <li> <p> <span>Repository</span>: Select the repository file where the            properties are stored.</p> <p>The fields that come after are pre-filled in using the fetched                data.</p> <p>For further information about the <span>File Json</span> node, see <a href="https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/centralizing-json-file-metadata" target="_blank">Centralizing JSON file metadata</a>.</p> </li> </ul> |
| Schema and Edit 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> <p>Click <span>Edit        schema</span> to make changes to the schema. If the current schema is of the <span>Repository</span> type, three options are available:</p> <ul> <li> <p> <span>View schema</span>: choose this                option to view the schema only.</p> </li> <li> <p> <span>Change to built-in property</span>:                choose this option to change the schema to <span>Built-in</span> for local changes.</p> </li> <li> <p> <span>Update repository connection</span>:                choose this option to change the schema stored in the repository and decide whether                to propagate the changes to all the Jobs upon completion.</p> <p>If you just want to                propagate the changes to the current Job, you can select <span>No</span> upon completion and choose this schema metadata                again in the <span>Repository Content</span>                window.</p> </li> </ul> </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> |
| Read by | Select a way of extracting the JSON data in the file.<br><br><ul> <li> <p> <span>Xpath</span>: Extracts the JSON data based on                    the XPath query.</p> </li> <li> <p> <span>JsonPath</span>: Extracts the JSON data based on                    the JSONPath query. Note that it is recommended to read the data by JSONPath in                    order to gain better performance.</p> </li> </ul> |
| Folder/File | Browse to, or enter the path pointing to the data to be used in the file system.<br><br>If the path you entered points to a folder, all files stored in<br>that folder will be read.<br><br>If the file to be read is a compressed one, enter the file name<br>with its extension; then tFileInputJSON automatically decompresses it at<br>runtime. The supported compression formats and their corresponding<br>extensions are:<br><br><ul> <li> <p>DEFLATE: <em>*.deflate</em> </p> </li> <li> <p>gzip: <em>*.gz</em> </p> </li> <li> <p>bzip2: <em>*.bz2</em> </p> </li> <li> <p>LZO: <em>*.lzo</em> </p> </li> </ul><br><br>The button for browsing does not work with the Spark Local mode; if you are using the other Spark Yarn modes that Talend Studio<br>supports with your distribution, ensure that you have properly configured the connection<br>in a configuration component in the same Job. Use the configuration component depending<br>on the filesystem to be used. |
| Die on error | Select the checkbox to stop the execution of the Job when an error<br>occurs. |
| Loop Jsonpath query | Enter the JSONPath or XPath of the node on which the loop is based.<br><br>Note if you have selected Xpath from the Read by drop-down list, the Loop<br>Xpath query field is displayed instead. |
| Mapping | Complete this table to map the columns defined in the schema to the<br>corresponding JSON nodes.<br><br><ul> <li> <p> <span>Column</span>: The <span>Column</span> cells are automatically filled with the defined schema                    column names.</p> </li> <li> <p> <span>Json query</span>/<span>JSONPath query</span>: Specify the JSONPath node that holds the                    desired data. For more information about JSONPath expressions, see <a href="http://goessner.net/articles/JsonPath/" target="_blank">http://goessner.net/articles/JsonPath/</a>.</p> <p>This column is available only when <span>JsonPath</span> is selected from the <span>Read                        By</span> list.</p> </li> <li> <p> <span>XPath query</span>: Specify the XPath node that                    holds the desired data.</p> <p>This column is available only when <span>Xpath</span> is selected from the <span>Read                        By</span> list.</p> </li> <li> <p> <span>Get Nodes</span>: Select this check box to                    extract the JSON data of all the nodes or select the check box next to a                    specific node to extract the data of that node.</p> <p>This column is available only when <span>Xpath</span> is selected from the <span>Read                        By</span> list.</p> </li> </ul> |

## Advanced settings

| Properties | Description |
| --- | --- |
| Set minimum partitions | Select this check box to control the number of partitions to be created from the input<br>data over the default partitioning behavior of Spark.<br><br>In the displayed field, enter, without quotation marks, the minimum number of partitions<br>you want to obtain.<br><br>When you want to control the partition number, you can generally set at least as many partitions as<br>the number of executors for parallelism, while bearing in mind the available memory and the<br>data transfer pressure on your network. |
| 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 (*.*). |
| 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 and define it manually. |

## Usage

| Usage guidance | Description |
| --- | --- |
| **Usage rule** | This component is used as a start component and requires an output link.<br><br>This component is only used to provide the lookup flow (the right side of a join<br>operation) to the main flow of a tMap component. In this<br>situation, the lookup model used by this tMap must be<br>Load once.<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> <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. |