Function | tHDFSOutputRaw receives a single-column input flow and writes the data into HDFS. | |
Purpose | tHDFSOutputRaw transfers data of different formats such as hierarchical data in the form of a single column into a given HDFS file system. |
Component family |
Big Data / Hadoop | |
Basic settings |
Property type |
Either Built-In or Repository. Built-In: No property data stored centrally. Repository: Select the repository file where the properties are stored. |
|
Schema and Edit Schema |
A schema is a row description. It defines the number of fields (columns) to be processed and passed on to the next component. The schema is either Built-In or stored remotely in the Repository. The schema of this component is read-only. You can click Edit schema to view the schema.
|
Use an existing connection |
Select this check box and in the Component List click the HDFS connection component from which you want to reuse the connection details already defined. Note that when a Job contains the parent Job and the child Job, Component List presents only the connection components in the same Job level. | |
Version |
Distribution |
Select the cluster you are using from the drop-down list. The options in the list vary depending on the component you are using. Among these options, the following ones requires specific configuration:
In order to connect to a custom distribution, once selecting Custom, click the
|
Hadoop version |
Select the version of the Hadoop distribution you are using. The available options vary depending on the component you are using. Along with the evolution of Hadoop, please note the following changes:
| |
Authentication |
Use kerberos authentication |
If you are accessing the Hadoop cluster running with Kerberos security, select this check box, then, enter the Kerberos principal name for the NameNode in the field displayed. This enables you to use your user name to authenticate against the credentials stored in Kerberos.
This check box is available depending on the Hadoop distribution you are connecting to. |
Use a keytab to authenticate |
Select the Use a keytab to authenticate check box to log into a Kerberos-enabled Hadoop system using a given keytab file. A keytab file contains pairs of Kerberos principals and encrypted keys. You need to enter the principal to be used in the Principal field and the access path to the keytab file itself in the Keytab field. Note that the user that executes a keytab-enabled Job is not necessarily the one a principal designates but must have the right to read the keytab file being used. For example, the user name you are using to execute a Job is user1 and the principal to be used is guest; in this situation, ensure that user1 has the right to read the keytab file to be used. | |
NameNode URI |
Type in the URI of the Hadoop NameNode. The NameNode is the master node of a Hadoop system. For example, we assume that you have chosen a machine called masternode as the NameNode of an Apache Hadoop distribution, then the location is hdfs://masternode:portnumber. | |
Use Datanode hostname |
Select the Use datanode hostname check box to allow the Job to access datanodes via their hostnames. This actually sets the dfs.client.use.datanode.hostname property to true. When connecting to a S3N filesystem, you must select this check box. | |
|
User name |
The User name field is available when you are not using Kerberos to authenticate. In the User name field, enter the login user name for your distribution. If you leave it empty, the user name of the machine hosting the Studio will be used. |
Group |
Enter the membership including the authentication user under which the HDFS instances were started. This field is available depending on the distribution you are using. | |
|
File Name |
Browse to, or enter the location of the file which you write data to. This file is created automatically if it does not exist. |
|
Action |
Select an operation in HDFS: Create: Creates a file with data using the file name defined in the File Name field. Overwrite: Overwrites the data in the file specified in the File Name field. Append: Inserts the data into the file specified in the File Name field. The specified file is created automatically if it does not exist. |
Custom encoding |
You may encounter encoding issues when you process the stored data. In that situation, select this check box to display the Encoding list. Select the encoding from the list or select Custom and define it manually. This field is compulsory for database data handling. This option is not available for a Sequence file. | |
Compression |
Select the Compress the data check box to compress the output data. Hadoop provides different compression formats that help reduce the space needed for storing files and speed up data transfer. When reading a compressed file, the Studio needs to uncompress it before being able to feed it to the input flow. Note that when the type of the file to be written is Sequence File, the compression algorithm is embedded within the container files (the part- files) of this sequence file. These files can be read by a Talend component such as tHDFSInput within MapReduce Jobs and other applications that understand the sequence file format. Alternatively, when the type is Text File, the output files can be accessed with standard compression utilities that understand the bzip2 or gzip container files. | |
Die on error | Select this check box to stop the execution of the Job when an error occurs. Clear the check box to skip any rows on error and complete the process for error-free rows. When errors are skipped, you can collect the rows on error using a Row > Reject link. | |
Advanced settings |
Hadoop properties |
Talend Studio uses a default configuration for its engine to perform operations in a Hadoop distribution. If you need to use a custom configuration in a specific situation, complete this table with the property or properties to be customized. Then at runtime, the customized property or properties will override those default ones.
For further information about the properties required by Hadoop and its related systems such as HDFS and Hive, see the documentation of the Hadoop distribution you are using or see Apache's Hadoop documentation on http://hadoop.apache.org/docs and then select the version of the documentation you want. For demonstration purposes, the links to some properties are listed below:
|
|
tStatCatcher Statistics |
Select this check box to collect log data at the component level. |
Dynamic settings |
Click the [+] button to add a row in the table and fill the Code field with a context variable to choose your HDFS connection dynamically from multiple connections planned in your Job. This feature is useful when you need to access files in different HDFS systems or different distributions, especially when you are working in an environment where you cannot change your Job settings, for example, when your Job has to be deployed and executed independent of Talend Studio. The Dynamic settings table is available only when the Use an existing connection check box is selected in the Basic settings view. Once a dynamic parameter is defined, the Component List box in the Basic settings view becomes unusable. For examples on using dynamic parameters, see Scenario 3: Reading data from MySQL databases through context-based dynamic connections and Scenario: Reading data from different MySQL databases using dynamically loaded connection parameters. For more information on Dynamic settings and context variables, see Talend Studio User Guide. | |
Global Variables |
FILENAME_PATH: the path of the input file. This is an After variable and it returns a string. ERROR_MESSAGE: the error message generated by the component when an error occurs. This is an After variable and it returns a string. This variable functions only if the Die on error check box is cleared, if the component has this check box. A Flow variable functions during the execution of a component while an After variable functions after the execution of the component. 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 it. For further information about variables, see Talend Studio User Guide. | |
Usage |
This component needs an input component that provides the data of a single column. This column must be labeled to content and its type must be Object. For example, you can use tConvertType to convert a column from String to Object, or use tJavaRow to add the data to be processed into the globalMap object so that this data becomes available as a global variable for the other components such as tFixedFlowInput to construct this required single column. For further information about tConvertType, tJavaRow and tFixedFlowInput, see tConvertType, tJavaRow and tFixedFlowInput, respectively. For further information about how to use a global variable, see the section describing how to use contexts and variables in Talend Studio User Guide. | |
Prerequisites |
The Hadoop distribution must be properly installed, so as to guarantee the interaction with Talend Studio. The following list presents MapR related information for example.
For further information about how to install a Hadoop distribution, see the manuals corresponding to the Hadoop distribution you are using. | |
Log4j | If you are using a subscription-based version of the Studio, the activity of this component can be logged using the log4j feature. For more information on this feature, see Talend Studio User Guide. For more information on the log4j logging levels, see the Apache documentation at http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html. |