Talend 在YARN上运行作业


在本教程中,您将学习如何创建一个在YARN上运行的大数据批次作业、从HDFS读取数据、对其进行排序并在控制台中显示最终结果。

本教程使用Talend Data Fabric Studio v6和Hadoop集群:Cloudera CDH v5.4。

本教程复用了标题为Talend 创建集群连接元数据教程中创建的HDFS连接元数据。

1 使用MapReduce框架新建大数据批次作业

对于大数据处理,TalendStudio允许您创建在Spark或MapReduce上运行的批次(Batch)作业流(Streaming)作业。在这种情况下,您将创建一个在MapReduce上运行的大数据量的批次作业。

1)选择集成透视图

2)要确保您已在项目存储库中创建了Hadoop集群连接HDFS连接元数据,请展开Hadoop集群

3)在Repository中,展开JobDesigns,右键单击BigDataBatch,然后单击CreateBigDataBatchJob

4)在“名称”字段中,输入ReadHDFS_YARN。从框架列表中,选择MapReduce。在“用途”字段中,输入读取客户数据并对其进行排序,在“描述”字段中,输入从YARN上运行的大数据批次理作业中读取存储在HDFS中的客户数据并对其进行排序,然后单击完成。

此时可以在“作业设计>大数据批处理”下的存储库中找到新建好的作业,并在作业设计器中将其打开。

2 从HDFS读取数据并配置在YARN上执行

注意:对于在YARN上运行的作业,tFileInputDelimited组件允许您从HDFS读取数据。您将配置此组件以读取您的数据。

1)从存储库中,在“元数据>HadoopCluster>MyHadoopCluster>HDFS”下,单击MyHadoopCluster_HDFS并将其拖动到作业设计器。在组件列表中,选择tFileInputDelimited并单击确定。Hadoop配置更新确认窗口打开。

2)点击确定,允许Studio更新Hadoop配置以使其对应于您的集群元数据

3)在Run视图中,单击HadoopConfiguration并查看执行是否已使用存储库中可用的HDFS连接元数据进行配置。

现在,您可以从HDFS读取数据,并且您的作业已配置为在集群上执行。

3 配置tFileInputDelimited组件并从HDFS读取您的数据

客户数据作为分隔文件存储在HDFS上。您可以配置tFileInputDelimited组件来读取数据。

1)双击tFileInputDelimited组件,打开组件视图。

2)点击编辑模式,打开模式编辑器。

3)将列添加到模式中:单击三次[+]并输入字段名称CustomerIDFirstNameLastName

4)更改CustomerID列的类型:单击该字段并单击Integer。单击确定以保存模式。

5)点击“文件夹/文件”字段旁边的[…],浏览找到对应的文件路径,然后点击“确定”。

tFileInputDelimited组件现在配置为从HDFS读取客户数据,同时也支持其他文件类型,例如AVROJSONXML,并且不必为分隔文件。

4 根据客户ID值对客户数据进行升序排序

1)添加一个tSortRow

2)使用Main将名为MyHadoopCluster_HDFStFileInputDelimited组件连接到tSortRow组件。

3)双击tSortRow组件,打开组件视图

4)单击同步列配置模式。

5)向Criteria表添加新条件:单击Schema列中的[+];选择CustomerID。选择按“num”进行排序,并在Orderasc/desc中,选择asc,即按数字字符进行升序排序。

现在已配置tSortRow组件。

5 使用tLogRow组件在控制台显示排序结果

1)添加一个tLogRow组件并使用Main将其连接到tSortRow组件。

2)双击tLogRow组件,打开组件视图。

3)在“模式”面板中,选择“表格”。

您的作业现在可以运行了。它将从HDFS读取数据,并对其进行排序,最终结果将显示在控制台中。


评论区(0)

评论