# tHiveLoad

Writes data of different formats into a given Hive table or to export data from a Hive table to a directory.

tHiveLoad connects to a given Hive database and copies or moves data into an existing Hive table or a directory you specify.

The tHiveLoad component first prepares the lines to be written to Hive before eventually writing them to Hive. This approach is more efficient with regard to Hive than the line-bye-line approach typically employed by an output component. For this reason, tHiveOutput does not exist in a Job designed in the Standard framework.

This component is not shipped with your Talend Studio by default. You need to install it using the Feature Manager. For more information, see [Installing features using the Feature Manager](https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/install-features-to-talend-studio).

## tHiveLoad Standard properties

These properties are used to configure tHiveLoad running in the Standard Job framework.

The Standard tHiveLoad component belongs to the Big Data and the Databases families.

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

## Basic settings

Connection configuration:

* When you use this component with Google Dataproc:

  | Project ID | Enter the ID of your Google Cloud Platform project.<br><br>If you are not certain about your project ID, confirm it in the Manage<br>Resources page of your Google Cloud Platform services. |
  | --- | --- |
  | Cluster ID | Enter the ID of your Dataproc cluster to be used. |
  | Region | From this drop-down list, select the Google Cloud region to<br>be used. |
  | Google Storage staging bucket | As a Talend Job expects its<br>dependent jar files for execution, specify the Google Storage directory to<br>which these jar files are transferred so that your Job can access these<br>files at execution.<br><br>The directory to be entered must end with a slash (/). If not existing, the<br>directory is created on the fly but the bucket to be used must already<br>exist. |
  | Database | Fill this field with the name of the database. |
  | Provide Google Credentials in file | Leave this check box clear, when you<br>launch your Job from a given machine in which Google Cloud SDK has been<br>installed and authorized to use your user account credentials to access<br>Google Cloud Platform. In this situation, this machine is often your<br>local machine.<br><br>When you launch<br>your Job from a remote machine, such as a Talend JobServer, select this check box and in the Path to Google<br>Credentials file field that is displayed, enter the<br>directory in which this JSON file is stored in the Talend JobServer machine. You can also click the [...] button,<br>and then in the pop-up dialog box, browse for the JSON file.<br><br>For further information about this Google<br>Credentials file, see the administrator of your Google Cloud Platform or<br>visit [Google Cloud Platform Auth<br>Guide](https://cloud.google.com/docs/authentication). |

* When you use this component with Microsoft HDInsight distribution:

  | Livy<br>configuration | Enter the address and the authentication information of the Microsoft HD<br>Insight cluster to be used. For example, the address could be<br>https://your\_hdinsight\_cluster\_name.azurehdinsight.net and the<br>authentication information is your Azure account name: yourname.<br>Talend Studio uses this service to submit the Job to the HD Insight cluster.<br><br>In the Job result<br>folder field, enter the location in which you want to store the<br>execution result of a Job in the Azure Storage to be used. |
  | --- | --- |
  | Job status polling<br>configuration | In the Poll interval when retrieving Job status (in<br>ms) field, enter the time interval (in milliseconds) at the end of which<br>you want Talend Studio to ask<br>Spark for the status of your Job. For example, this status could be Pending or<br>Running.<br><br>In the Maximum number of consecutive statuses<br>missing field, enter the maximum number of times Talend Studio should<br>retry to get a status when there is no status response. |
  | HDInsight<br>configuration | <ul> <li> <span>The <span>Username</span> is the                                 one defined when creating your cluster. You can find it in the                                    <span>SSH + Cluster login</span> blade of your                                 cluster.</span> </li> <li>The <span>Password</span> is                        defined when creating your HDInsight cluster for authentication to this                        cluster.</li> </ul> |
  | Windows Azure<br>Storage configuration | Enter the address and the authentication information of the<br>Azure Storage or ADLS Gen2 account to be used. In this configuration, you do not<br>define where to read or write your business data but define where to deploy your Job<br>only.<br><br>In the Container field, enter the name of the container to be used. You<br>can find the available containers in the Blob<br>blade of the Azure Storage account to be used.<br><br>In the Deployment<br>Blob field, enter the location in which you want to store the<br>current Job and its dependent libraries in this Azure Storage account.<br><br>In the Hostname field, enter the Primary Blob Service Endpoint of your<br>Azure Storage account without the https:// part. You can find this endpoint in the<br>Properties blade of this storage<br>account.<br><br>In the Username field, enter the name of the Azure Storage account to be<br>used.<br><br>In the Password field, enter the access key of the Azure Storage account<br>to be used. This key can be found in the Access<br>keys blade of this storage account. |
  | Database | Fill this field with the name of the<br>database. |

* When you use the other distributions:

  | Connection<br>mode | Select a connection mode from the list. The<br>options vary depending on the distribution you are<br>using. |
  | --- | --- |
  | Hive<br>version | Select the Hive version you are using. |
  | Host | Enter the database server IP address. |
  | Port | Enter the listening port number of DB<br>server. |
  | Database | Fill this field with the name of the<br>database. |
  | Username<br>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. |
  | Use kerberos<br>authentication | If you are accessing a Hive metastore running with Kerberos security,<br>select this checkbox and then enter the relevant parameters in the fields that<br>appear.<br><br>The values of the following parameters can be found in the *hive-site.xml* file of the Hive system to be used.<br><br><ol> <li> <p> <span>Hive principal</span> uses the value                            of <em>hive.metastore.kerberos.principal</em>. This is                            the service principal of the Hive metastore.</p> </li> <li> <p> <span>HiveServer2 local user                                principal</span> uses the value of <em>hive.server2.authentication.kerberos.principal</em>.</p> </li> <li> <p> <span>HiveServer2 local user keytab</span>                            uses the value of <em>hive.server2.authentication.kerberos.keytab</em> </p> </li> <li> <p> <span>Metastore URL</span> uses the value of                                <em>javax.jdo.option.ConnectionURL</em>. This is the                            JDBC connection string to the Hive metastore.</p> </li> <li> <p> <span>Driver class</span> uses the value of                                <em>javax.jdo.option.ConnectionDriverName</em>. This                            is the name of the driver for the JDBC connection.</p> </li> <li> <p> <span>Username</span> uses the value of <em>javax.jdo.option.ConnectionUserName</em>. This, as                            well as the Password parameter, is the user credential for connecting to                            the Hive Metastore.</p> </li> <li> <p> <span>Password</span> uses the value of <em>javax.jdo.option.ConnectionPassword</em>.</p> </li> </ol><br><br><br>For the other parameters that are displayed, consult the Hadoop configuration<br>files they belong to. For example, the Namenode<br>principal can be found in the *hdfs-site.xml* file<br>or the *hdfs-default.xml* file of the distribution you are<br>using.<br><br>This check box is available depending on the Hadoop distribution you are<br>connecting to. |
  | Use a keytab to authenticate | Select the Use a keytab to authenticate<br>checkbox to log into a Kerberos-enabled system using a given keytab file. A keytab<br>file contains pairs of Kerberos principals and encrypted keys. You need to enter the<br>principal to be used in the Principal field and<br>the access path to the keytab file itself in the Keytab field. This keytab file must be stored in the machine in<br>which your Job actually runs, for example, on a Talend JobServer.<br><br>Note that the user that executes a keytab-enabled Job is not necessarily<br>the one a principal designates but must have the right to read the keytab file being<br>used. For example, the username you are using to execute a Job is *user1* and the principal to be used is *guest*; in this<br>situation, ensure that *user1* has the right to read the keytab<br>file to be used. |
  | Use SSL encryption | Select this checkbox to enable the SSL or TLS encrypted connection.<br><br>Then in the fields that are displayed, provide the authentication<br>information:<br><br><ul> <li> <p>In the <span>Trust store                                path</span> field, enter the path, or browse to the TrustStore                            file to be used. By default, the supported TrustStore types are <em>JKS</em> and <em>PKCS 12</em>.</p> </li> <li> <p>To enter the password, click the <span>[...]</span> button         next to the password field, enter the password in double quotes in the pop-up dialog box,         and click <span>OK</span> to save the settings.</p> </li> </ul><br><br>This feature is available only to the HiveServer2 in the Standalone mode of the following distributions:<br><br><ul> <li> <p>Hortonworks Data Platform 2.0 +</p> </li> <li> <p>Cloudera CDH4 +</p> </li> <li> <p>Pivotal HD 2.0 +</p> </li> <li> <p>Amazon EMR 4.0.0 +</p> </li> </ul> |
  | Set Resource<br>Manager | Select this check box and in the displayed field, enter the location of the<br>ResourceManager of your distribution. For example, tal-qa114.talend.lan:8050.<br><br>Then you can continue to set the following parameters depending on the<br>configuration of the Hadoop cluster to be used (if you leave the check box of a<br>parameter clear, then at runtime, the configuration about this parameter in the<br>Hadoop cluster to be used will be ignored ):<br><br><ol> <li> <p>Select the <span>Set resourcemanager                        scheduler address</span> check box and enter the Scheduler address in                    the field that appears.</p> </li> <li> <p>Select the <span>Set jobhistory                        address</span> check box and enter the location of the JobHistory                    server of the Hadoop cluster to be used. This allows the metrics information of                    the current Job to be stored in that JobHistory server.</p> </li> <li> <p>Select the <span>Set staging                        directory</span> check box and enter this directory defined in your                    Hadoop cluster for temporary files created by running programs. Typically, this                    directory can be found under the <em>yarn.app.mapreduce.am.staging-dir</em> property in the configuration files                    such as <em>yarn-site.xml</em> or <em>mapred-site.xml</em> of your distribution.</p> </li> <li> <p>Allocate proper memory volumes to the <span>Map</span> and the <span>Reduce</span>                    computations and the <span>ApplicationMaster</span>                    of YARN by selecting the <span>Set memory</span>                    check box in the <span>Advanced settings</span>                    view.</p> </li> <li> <p>Select the <span>Set Hadoop                                user</span> check box and enter the user name under which you                            want to execute the Job. Since a file or a directory in Hadoop has its                            specific owner with appropriate read or write rights, this field allows                            you to execute the Job directly under the user name that has the                            appropriate rights to access the file or directory to be processed.</p> </li> <li> <p>Select the <span>Use datanode hostname</span> check box to allow the                    Job to access datanodes via their hostnames. This actually sets the <em>dfs.client.use.datanode.hostname</em>                    property to <em>true</em>. When connecting to a                    S3N filesystem, you must select this check box.</p> </li> </ol><br><br><br>For further information about these parameters, see the documentation or<br>contact the administrator of the Hadoop cluster to be used.<br><br>For further information about the Hadoop Map/Reduce framework, see the<br>Map/Reduce tutorial in [Apache's Hadoop documentation](http://hadoop.apache.org/). |
  | Set NameNode<br>URI | Select this check box and in the displayed field, enter the URI of the<br>Hadoop NameNode, the master node of a Hadoop system. For example, assuming that you<br>have chosen a machine called masternode as the NameNode, then<br>the location is hdfs://masternode:portnumber. If you are using WebHDFS, the location should be<br>webhdfs://masternode:portnumber; WebHDFS with SSL is not<br>supported yet.<br><br>For further information about the Hadoop Map/Reduce framework, see the<br>Map/Reduce tutorial in [Apache's Hadoop documentation](http://hadoop.apache.org/). |
  | Spark catalog | Select the Spark implementation to use.<br><br><ul> <li> <span>In-memory</span>: select this value                                                if you set the <span>Hive thrift                                                  metastore</span> to a Hive metastore that is                                                not an external metastore.</li> <li> <span>Hive</span>: select this value if                                                you set the <span>Hive thrift                                                  metastore</span> to an external Hive                                                metastore that exists outside of your cluster.</li> </ul> |

The other properties:

| 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. |
| 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.<br><br>Information noteNote: When a Job contains the parent Job and the child Job, do the following if you<br>want to share an existing connection between the parent Job and the child Job (for example,<br>to share the connection created by the parent Job with the child Job).<br><br><ol> <li>In the parent level, register the database connection to be shared               in the <span>Basic settings</span> view of the               connection component which creates that very database connection. </li> <li>In the child level, use a dedicated connection component to read               that registered database connection. </li> </ol><br><br>For an example about how to share a database connection across Job levels,<br>see [Sharing a database connection](https://help.qlik.com/talend/r/en-US/7.3/studio-user-guide/sharing-database-connection). |
| Distribution | Select the cluster you are using from the drop-down list. The options in the<br>list vary depending on the component you are using. Among these options, the following<br>ones requires specific configuration:<br><br><ul> <li> <p>If available in this <span>Distribution</span> drop-down list, the <span>Microsoft HD Insight</span> option allows you to                        use a Microsoft HD Insight cluster. For this purpose, you need to configure                        the connections to the HD Insight cluster and the Windows Azure Storage                        service of that cluster in the areas that are displayed. For detailed                        explanation about these parameters, see <a href="https://help.qlik.com/talend/r/en-US/7.3/studio-user-guide/configuring-connection-manually" target="_blank">Configuring the connection                            manually</a>. </p> </li> <li> <p>If you select <span>Amazon EMR</span>,                        find more details in <a href="https://help.qlik.com/talend/r/en-US/8.0/amazon-emr-getting-started" target="_blank">Amazon EMR - Getting Started</a>.</p> </li> <li> <p>The <span>Custom</span> option                        allows you to connect to a cluster different from any of the distributions                        given in this list, that is to say, to connect to a cluster not officially                        supported by <span> <span>Talend</span> </span>.</p> </li> </ul><br><br><ol> <li> <p>Select <span>Import from existing                        version</span> to import an officially supported distribution as base                    and then add other required jar files which the base distribution does not                    provide.</p> </li> <li> <p>Select <span>Import from zip</span> to                    import the configuration zip for the custom distribution to be used. This zip                    file should contain the libraries of the different Hadoop elements and the index                    file of these libraries. </p> <p>Note that custom versions are not officially supported by                        <span> <span>Talend</span> </span>. <span> <span>Talend</span> </span> and its community provide you with the opportunity to connect to                    custom versions from <span>Talend Studio</span> but cannot guarantee that the configuration of whichever version you choose                    will be easy, due to the wide range of different Hadoop distributions and                    versions that are available. As such, you should only attempt to set up such a                    connection if you have sufficient Hadoop experience to handle any issues on your                    own.</p> <div><span>Information note</span><span>Note:</span> <p>In this dialog box, the active check box must be kept                        selected so as to import the jar files pertinent to the connection to be                        created between the custom distribution and this component.</p> </div> <p>For a step-by-step example about how to connect to a custom                    distribution and share this connection, see <a href="https://help.qlik.com/talend/r/en-US/8.0/hortonworks" target="_blank">Hortonworks</a>.</p> </li> </ol><br><br>Information noteNote: From Talend Studio 8.0 R2024-04 onwards, the<br>Distribution parameter has been removed. |
| Hive version | Select the HBase version of the distribution you are using.<br><br>Information noteNote: From Talend Studio 8.0 R2024-04 onwards, the<br>Hive version parameter has been removed. |
| Hiver Server | Select the Hive version you are using. |
| Hadoop version | Select the Hadoop version you are using. |
| Load action | Select the action you need to carry for writing data into the<br>specified destination.<br><br><ul> <li> <p>When you select <span>LOAD</span>, you                                        are moving or copying data from a directory you specify.                                    </p> </li> <li> <p>When you select <span>INSERT</span>,                                        you are moving or copying data based on queries.</p> </li> </ul> |
| Execution engine | Select this check box and from the drop-down list, select the framework you need to<br>use to perform the INSERT action.<br><br>This property is available with the following connection modes:<br><br><ul> <li>Dataproc</li> <li>HDInsight</li> <li>Standalone</li> </ul><br><br>Before using Tez or MapReduce, ensure that the Hadoop cluster you are using<br>supports Tez by checking the hive.execution.engine parameter in the<br>hive-site.xml file. You will need to configure the access to the<br>relevant Tez libraries via the Advanced settings view of<br>this component.<br><br>For further information about Hive on Tez, see [Apache's related documentation](https://cwiki.apache.org/confluence/display/Hive/Hive+on+Tez). Some examples are presented<br>there to show how Tez can be used to gain performance over MapReduce. |
| Target type | This drop-down list appears only when you have selected<br>INSERT from the Load list.<br><br>Select from this list the type of the location you need to write<br>data in.<br><br><ul> <li> <p>If you select <span>Table</span> as                                        destination, you can still choose to append data to or                                        overwrite the contents in the specified table.</p> </li> <li> <p>If you select <span>Directory</span>                                        as destination, you are overwriting the contents in the                                        specified directory</p> </li> </ul> |
| Table name | Enter the name of the Hive table you need to write data in.<br><br>Note that with the INSERT action, this field is available only when you have<br>selected Table from the Target type list. |
| File path | Enter the directory you need to read data from or write data<br>in, depending on the action you have selected from the Load list.<br><br><ul> <li> <p>If you have selected <span>LOAD</span>: this is the path to the data you want to                                        copy or move into the specified Hive table.</p> </li> <li> <p>If you have selected <span>INSERT</span>: this is the directory to which you want to                              export data from a Hive table. With this action, the <span>File path</span> field is available only when                              you have selected <span>Directory</span> from                              the <span>Target type</span> list. </p> </li> </ul> |
| The target table uses the Parquet<br>format | If the table in which you need to write data is a<br>PARQUET<br>table, select this check box.<br><br>Note that when the file format to be used is PARQUET, you might be prompted to find the specific PARQUET JAR file and<br>install it into Talend Studio.<br><br><ul> <li> <p>When the connection mode to Hive is <span>Embedded</span>, the Job is run in your local machine and calls this JAR            installed in <span>Talend Studio</span>.</p> </li> <li> <p>When the connection mode to Hive is <span>Standalone</span>, the Job is run in the server hosting Hive and this JAR file            is sent to the HDFS system of the cluster you are connecting to. Therefore, ensure that            you have correctly defined the NameNode URI in the corresponding field of the <span>Basic settings</span> view.</p> </li> </ul><br><br><br>This JAR file can be downloaded from Apache's site. For details about how to install<br>external modules, see [Installing external modules](https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/installing-external-modules).<br><br>Then from the Compression list that appears,<br>select the compression mode you need to use to handle the<br>PARQUET<br>file. The default mode is Uncompressed. |
| Action on file | Select the action to be carried out for writing data from the<br>drop-down list:<br><br><ul> <li><span>Overwrite</span>: overwrites the existing data.</li> <li><span>Append</span>: append data to the existing data.</li> </ul><br><br>This list is available only when the target is a Hive table;<br>if the target is a directory, the action to be used is automatically<br>Overwrite. |
| Query | This field appears when you have selected INSERT from the Load<br>list.<br><br>Enter the appropriate query for selecting the data to be exported<br>to the specified Hive table or directory. |
| Local | Select this check box to use the Hive LOCAL statement<br>for accessing a local directory. Note that this local directory is<br>actually in the machine in which the Job is run. Therefore, when the<br>connection mode to Hive is Standalone, the Job is run in the machine where the<br>Hive application is installed and thus this local directory is in<br>that machine.<br><br>This statement is used along with the directory you have defined<br>in the File path field. Therefore,<br>this Local check box is available<br>only when the File path field is<br>available.<br><br><ul> <li> <p>If you are using the <span>LOAD</span> action, <span>tHiveLoad</span> copies the local data to the target                              table.</p> </li> <li> <p>If you are using the <span>INSERT</span> action, <span>tHiveLoad</span> copies data to a local directory.</p> </li> <li> <p>If you leave this <span>Local</span>                                        check box clear, the directory defined in the <span>File path</span> field is assumed to be                                        in the HDFS system to be used and data will be moved to the                                        target location.</p> </li> </ul><br><br>For further information about this LOCAL statement,<br>see Apache's documentation about Hive's Language. |
| Set partitions | Select this check box to use the Hive Partition<br>clause in loading or inserting data in a Hive table. You need to<br>enter the partition keys and their values to be used in the field<br>that appears.<br><br>For example, enter *contry='US',<br>state='CA'*. This makes a partition clause reading<br>Partition (contry='US', state='CA'), that is to<br>say, a *US and CA*<br>partition.<br><br>Also, it is recommended to select the Create<br>partition if not exist check box that appears to<br>ensure that you will not create a duplicate partition. |
| Die on error | Select this check box to kill the Job when an error occurs. |

## Advanced settings

| Properties | Description |
| --- | --- |
| Tez lib | Select how the Tez libraries are accessed:<br><br><ul> <li> <p> <span>Auto install</span>: at runtime, the Job uploads                  and deploys the Tez libraries provided by <span>Talend Studio</span>                  into the directory you specified in the <span>Install                     folder in HDFS</span> field, for example, <em>/tmp/usr/tez</em>.</p> <p>If you have set the <em>tez.lib.uris</em> property in the properties                table, this directory overrides the value of that property at runtime. But the other                properties set in the properties table are still effective.</p> </li> <li> <p> <span>Use exist</span>: the Job accesses the Tez libraries already                deployed in the Hadoop cluster to be used. You need to enter the path pointing to                those libraries in the <span>Lib path (folder or file)</span>                field.</p> </li> <li> <p> <span>Lib jar</span>: this table appears when you have selected <span>Auto install</span> from the <span>Tez                lib</span> list and the distribution you are using is <span>Custom</span>. In this table, you need to add the Tez libraries to be                uploaded.</p> </li> </ul> |
| Temporary path | If you do not want to set the Jobtracker and the NameNode when you execute<br>the query select \* from your\_table\_name, you need to<br>set this temporary path. For example, */C:/select\_all* in<br>Windows. |
| Hadoop properties | *Talend Studio* uses a default configuration for its engine to perform<br>operations in a Hadoop distribution. If you need to use a custom configuration in a specific<br>situation, complete this table with the property or properties to be customized. Then at<br>runtime, the customized property or properties will override those default ones.<br><br><ul> <li> <p>Note that if you are using the centrally stored metadata from the <span>Repository</span>, this table automatically inherits the					properties defined in that metadata and becomes uneditable unless you change the						<span>Property type</span> from <span>Repository</span> to <span>Built-in</span>.</p> </li> </ul><br><br>For further information about the properties required by Hadoop and its related<br>systems such as HDFS and Hive, see the documentation of the Hadoop distribution you are<br>using or see [Apache's Hadoop documentation](http://hadoop.apache.org/docs) and then select the version of the<br>documentation you want. For demonstration purposes, the links to some properties are listed<br>below:<br><br><ul> <li> <p>Typically, the HDFS-related properties can be found in the <em>hdfs-default.xml</em> file of your distribution, such as <a href="http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml" target="_blank">                     http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml</a>.</p> </li> <li> <p>Apache also provides a page to list the <a href="https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties" target="_blank">Hive-related properties</a>.</p> </li> </ul> |
| Hive properties | *Talend Studio* uses a default configuration for its engine to perform operations in a Hive<br>database. If you need to use a custom configuration in a specific situation,<br>complete this table with the property or properties to be customized. Then at<br>runtime, the customized property or properties will override those default ones. For<br>further information, see [Hive dedicated properties](https://cwiki.apache.org/confluence/display/Hive/AdminManual+Configuration).<br><br><ul> <li>If you need to use Tez to run your Hive Job, add                            <span>hive.execution.engine</span> to the                            <span>Properties</span> column and <span>Tez</span> to the                            <span>Value</span> column, enclosing both of these strings in                        double quotation marks.</li> <li> <p>Note that if you are using the centrally stored metadata                            from the <span>Repository</span>, this                            table automatically inherits the properties defined in that metadata and                            becomes uneditable unless you change the <span>Property type</span> from <span>Repository</span> to <span>Built-in</span>.</p> </li> </ul> |
| Mapred job map memory mb and<br>Mapred job reduce memory<br>mb | You can tune the map and reduce computations by<br>selecting the Set memory check box to set proper memory allocations<br>for the computations to be performed by the Hadoop system.<br><br>In that situation, you need to enter the values you need in the Mapred<br>job map memory mb and the Mapred job reduce memory<br>mb fields, respectively. By default, the values are both *1000* which are normally appropriate for running the<br>computations.<br><br>The memory parameters to be set are Map (in Mb),<br>Reduce (in Mb) and ApplicationMaster (in Mb). These fields allow you to dynamically allocate<br>memory to the map and the reduce computations and the ApplicationMaster of YARN. |
| Path separator in server | Leave the default value of the Path separator in<br>server as it is, unless you have changed the separator used by your<br>Hadoop distribution's host machine for its PATH variable or in other words, that<br>separator is not a colon (:). In that situation, you must change this value to the<br>one you are using in that host. |
| tStatCatcher Statistics | Select this check box to collect log data at the component<br>level. |

## Global Variables

| Variables | Description |
| --- | --- |
| Global Variables | QUERY: the query statement<br>being processed. This is a Flow variable and it returns a string.<br><br><br>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 works standalone and supports writing a wide range<br>of data formats such as RC, ORC or AVRO.<br><br>If Talend Studio<br>used to connect to a Hive database is operated on Windows, you must manually create<br>a folder called *tmp* in the root of the disk where Talend Studio<br>is installed. |
| Dynamic settings | Click the [+] button to add a row in the table<br>and fill the Code field with a context<br>variable to choose your database connection dynamically from multiple<br>connections planned in your Job. This feature is useful when you need to<br>access database tables having the same data structure but in different<br>databases, especially when you are working in an environment where you<br>cannot change your Job settings, for example, when your Job has to be<br>deployed and executed independent of Talend Studio.<br><br>The Dynamic settings table is<br>available only when the Use an existing<br>connection check box is selected in the Basic settings view. Once a dynamic parameter is<br>defined, the Component List box in the<br>Basic settings view becomes unusable.<br><br>For examples on using dynamic parameters, see [Reading data from databases through<br>context-based dynamic connections](https://help.qlik.com/talend/r/en-US/8.0/components/defining-context-groups/reading-data-from-databases-through-context-based-dynamic-connections) and [Reading data from different MySQL databases<br>using dynamically loaded connection parameters](https://help.qlik.com/talend/r/en-US/8.0/components/context/reading-data-from-different-mysql-databases-using-dynamically-loaded-connection-parameters). For more information on<br>Dynamic settings and context variables, see<br>[Dynamic schema](https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/dynamic-schema) and [Creating a context group and define context<br>variables in it](https://help.qlik.com/talend/r/en-US/8.0/studio-user-guide/creating-context-group-and-define-context-variables-in-it). |
| Prerequisites | The Hadoop distribution must be properly installed, so as to guarantee the interaction<br>with *Talend Studio*. The following list presents MapR related information for<br>example.<br><br><ul> <li> <p>Ensure that you have installed the MapR client in the machine where                  <span>Talend Studio</span> is,               and added the MapR client library to the PATH variable of that machine. According to               MapR's documentation, the library or libraries of a MapR client corresponding to each               OS version can be found under <em>MAPR_INSTALL\                  hadoop\hadoop-VERSION\lib\native</em>. For example, the library for Windows is <em>\lib\native\MapRClient.dll</em> in the MapR client jar file.</p> <p>Without adding the specified library or libraries, you may encounter the following				error: <span>no MapRClient in java.library.path</span>.</p> </li> <li> <p>Set the <span>-Djava.library.path</span> argument,               for example, in the <span>Job Run VM arguments</span> area               of the <span>Run/Debug</span> view in the <span>Preferences</span> dialog box in the <span>Window</span> menu. This argument provides to <span>Talend Studio</span> the               path to the native library of that MapR client. This allows the subscription-based               users to make full use of the <span>Data viewer</span> to               view locally in <span>Talend Studio</span> the               data stored in MapR.</p> </li> </ul><br><br>For further information about how to install a Hadoop distribution, see the manuals<br>corresponding to the Hadoop distribution you are using. |

**Related concepts**

* [Creating a JDBC Connection to Azure HDInsight Hive](https://help.qlik.com/talend/en-US/components/8.0/hive/thiveconnection-thiveload-thivecreatetable-thdfsoutput-creating-jdbc-connection-to-azure-hdinsight-hive-standard-component-this)
* [Creating a partitioned Hive table](https://help.qlik.com/talend/en-US/components/8.0/hive/thiveconnection-thiveload-thivecreatetable-thdfsoutput-creating-partitioned-hive-table-standard-component-this)