- Talend 教程
- Talend - 首页
- Talend - 简介
- Talend - 系统需求
- Talend - 安装
- Talend Open Studio
- Talend - 数据集成
- Talend - 模型基础
- 数据集成组件
- Talend - 作业设计
- Talend - 元数据
- Talend - 上下文变量
- Talend - 作业管理
- Talend - 处理作业执行
- Talend - 大数据
- Hadoop 分布式文件系统
- Talend - Map Reduce
- Talend - 使用 Pig
- Talend - Hive
- Talend 有用资源
- Talend - 快速指南
- Talend - 有用资源
- Talend - 讨论
Talend - Map Reduce
在上一章中,我们了解了 Talend 如何处理大数据。在本章中,让我们了解如何使用 Map Reduce 与 Talend。
创建 Talend MapReduce 作业
让我们学习如何在 Talend 上运行 MapReduce 作业。在这里,我们将运行一个 MapReduce 词频统计示例。
为此,右键单击作业设计并创建一个新作业 - MapreduceJob。填写作业的详细信息,然后单击“完成”。
向 MapReduce 作业添加组件
要向 MapReduce 作业添加组件,请将 Talend 的五个组件 - tHDFSInput、tNormalize、tAggregateRow、tMap、tOutput 从调色板拖放到设计器窗口。右键单击 tHDFSInput 并创建到 tNormalize 的主链接。
右键单击 tNormalize 并创建到 tAggregateRow 的主链接。然后,右键单击 tAggregateRow 并创建到 tMap 的主链接。现在,右键单击 tMap 并创建到 tHDFSOutput 的主链接。
配置组件和转换
在 tHDFSInput 中,选择发行版 Cloudera 及其版本。请注意,NameNode URI 应为“hdfs://quickstart.cloudera:8020”,用户名应为“cloudera”。在文件名选项中,提供 MapReduce 作业的输入文件的路径。确保此输入文件存在于 HDFS 上。
现在,根据您的输入文件选择文件类型、行分隔符、文件分隔符和标题。
单击“编辑模式”并添加字段“line”作为字符串类型。
在 tNomalize 中,要规范化的列将是 line,项目分隔符将是空格 ->“”。现在,单击“编辑模式”。tNormalize 将具有 line 列,而 tAggregateRow 将具有 2 列 word 和 wordcount,如下所示。
在 tAggregateRow 中,将 word 作为输出列放入“分组依据”选项中。在“操作”中,将 wordcount 作为输出列,函数为 count,输入列位置为 line。
现在双击 tMap 组件以进入映射编辑器并将输入与所需的输出映射。在此示例中,word 映射到 word,wordcount 映射到 wordcount。在表达式列中,单击 […] 以进入表达式构建器。
现在,从类别列表中选择 StringHandling 和 UPCASE 函数。编辑表达式为“StringHandling.UPCASE(row3.word)”并单击“确定”。将 row3.wordcount 保留在与 wordcount 相对应的表达式列中,如下所示。
在 tHDFSOutput 中,从属性类型为存储库的连接到我们创建的 Hadoop 集群。注意字段将自动填充。在文件名中,提供要存储输出的输出路径。保持操作、行分隔符和字段分隔符如下所示。
执行 MapReduce 作业
配置成功完成后,单击“运行”并执行您的 MapReduce 作业。
转到您的 HDFS 路径并检查输出。请注意,所有单词都将大写,并附带其词频。