# tOracleLookupInput (deprecated)

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

This content is deprecated.

Reads a database and extracts fields based on a query.

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

It passes on the extracted data to tMap in order to provide the lookup data to the main flow. It must be directly connected to a tMap component and requires this tMap to use Reload at each row or Reload at each row (cache) for the lookup flow.

This component also allows you to connect and read data from a RDS Oracle database.

## tOracleLookupInput properties for Apache Spark Streaming

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

The Spark Streaming tOracleLookupInput component belongs to the Databases family.

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

## Basic settings

| Properties | Description |
| --- | --- |
| Property type | Either Built-In or Repository.<br><br><br>Built-In: No property data stored centrally.<br><br><br>Repository: Select the repository file where the<br>properties are stored. |
| ![](https://help.qlik.com/talend/en-US/components/8.0/Resources/images/Save_Icon.png) | Click this icon to open a database connection wizard and store the<br>database connection parameters you set in the component Basic settings view.<br><br>For more information about setting up and storing database connection parameters, see [Centralizing database metadata](https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/centralizing-database-metadata). |
| Use an existing connection | Select this check box and in the Component<br>List drop-down list, select the desired connection component to<br>reuse the connection details you already defined. |
| Connection type | The available drivers are:<br><br><ul> <li> <p> <span>Oracle OCI</span>: Select this connection type                    to use Oracle Call Interface with a set of C-language software APIs that provide                    an interface to the Oracle database.</p> </li> <li> <p> <span>Oracle Custom</span>: Select this connection                    type to access a clustered database. With this type of connection, the                        <span>Username</span> and the <span>Password</span> fields are deactivated and you need to                    enter the connection URL in the <span>URL</span> field                    that is displayed.</p> <p>For further information about the valid form of this URL, see <a href="http://www.dba-resources.com/oracle/jdbc-connection-strings-for-oracle-thin-driver/" target="_blank">JDBC Connection                        strings</a> from the Oracle documentation.</p> </li> <li> <p> <span>Oracle Service Name</span>: Select this                    connection type to use the TNS alias that you give when you connect to the                    remote database. </p> </li> <li> <p> <span>WALLET</span>: Select this connection type to                    store credentials in an Oracle wallet.</p> </li> <li> <p> <span>Oracle SID</span>: Select this connection type                    to uniquely identify a particular database on a system.</p> </li> </ul> |
| DB Version | Select the Oracle version in use. |
| Host | Database server IP address. |
| Port | Listening port number of DB server. |
| Database | Name of the database. |
| Oracle schema | Oracle schema name. |
| Username and Password | DB user authentication data.<br><br>To enter the password, click the [...] button<br>next to the password field, enter the password in double quotes in the pop-up dialog box,<br>and click OK to save the settings. |
| Schema and Edit<br>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> |
| Table name | Database table name. |
| Query type and Query | Enter your DB query paying particularly attention to properly sequence<br>the fields in order to match the schema definition.<br><br>The result of the query must contain only records that match join key you need to use in<br>tMap. In other words, you must use the schema of the<br>main flow to tMap to construct the SQL statement here in<br>order to load only the matched records into the lookup flow.<br><br>This approach ensures that no redundant records are loaded into memory and outputted to<br>the component that follows. |

## Advanced settings

| Properties | Description |
| --- | --- |
| Additional JDBC parameters | Specify additional connection properties for the database connection you are<br>creating. The properties are separated by semicolon and each property is a key-value<br>pair, for example, *encryption=1;clientname=Talend*.<br><br>This field is not available if the Use an existing<br>connection check box is selected. |
| Trim all the String/Char columns | Select this check box to remove leading and trailing whitespace from<br>all the String/Char columns. |
| Trim column | Remove leading and trailing whitespace from defined columns. |
| Connection pool | In this area, you configure, for each Spark executor, the connection pool used to control<br>the number of connections that stay open simultaneously. The default values given to the<br>following connection pool parameters are good enough for most use cases.<br><br><ul> <li> <p> <span>Max total number of connections</span>: enter the maximum number            of connections (idle or active) that are allowed to stay open simultaneously.</p> <p>The default number is <em>8</em>. If you enter <em>-1</em>, you allow unlimited number of open connections at the same                time.</p> </li> <li> <p> <span>Max waiting time (ms)</span>: enter the maximum amount of time                    at the end of which the response to a demand for using a connection should be returned by                    the connection pool. By default, it is -1, that is to say, infinite.</p> </li> <li> <p> <span>Min number of idle connections</span>: enter the minimum number                        of idle connections (connections not used) maintained in the connection pool.</p> </li> <li> <p> <span>Max number of idle connections</span>: enter the maximum number                            of idle connections (connections not used) maintained in the connection pool.</p> </li> </ul> |
| Evict connections | Select this check box to define criteria to destroy connections in the connection pool. The<br>following fields are displayed once you have selected it.<br><br><ul> <li> <p> <span>Time between two eviction runs</span>: enter the time interval                                    (in milliseconds) at the end of which the component checks the status of the connections and                                    destroys the idle ones.</p> </li> <li> <p> <span>Min idle time for a connection to be eligible to                                            eviction</span>: enter the time interval (in milliseconds) at the end of which the idle                                        connections are destroyed.</p> </li> <li> <p> <span>Soft min idle time for a connection to be eligible to                                                eviction</span>: this parameter works the same way as <span>Min idle                                                    time for a connection to be eligible to eviction</span> but it keeps the minimum number                                            of idle connections, the number you define in the <span>Min number of idle                                                connections</span> field.</p> </li> </ul> |

## Usage

| Usage guidance | Description |
| --- | --- |
| **Usage rule** | This component is used as a start component and requires an output link.<br><br>This component should use a tOracleConfiguration component present in the same Job to connect to<br>Oracle. You need to select the Use an existing<br>connection check box and then select the tOracleConfiguration component to be used.<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. |