在本教程中,您将学会使用Spark框架创建一个大数据量的处理作业、从HDFS读取数据、对其进行排序并在控制台中显示它们。
本教程使用Talend Data Fabric Studio v6和Hadoop集群:Cloudera CDH v5.4。
本教程复用了标题为Talend 创建集群连接元数据教程中创建的HDFS连接元数据。
1 使用Spark框架创建一个新的BigDataBatchJob
对于处理大数据,TalendStudio允许您创建在Spark或MapReduce上运行的批次(Batch)作业和流(Streaming)作业。这种情况下,您将创建一个在Spark上运行大数据量的批次作业。
1)选择集成透视图。
2)确保您已在项目存储库中创建了Hadoop集群连接和HDFS连接元数据。
3)在Repository中,打开JobDesigns,右键点击BigDataBatch,然后单击CreateBigDataBatchJob,即前文提到过的大数据批次作业。
4)在“名称”字段中,输入ReadHDFS_Spark。在框架列表中,确保您选择了Spark。在“用途”字段中,输入Readandsortcustomerdata,在“描述”字段中,输入ReadandsortcustomerdatastoredinHDFSfromaBigDataBatchJobrunningonSpark,然后点击Finish。
此时可以在“作业设计>大数据批处理”下的存储库中找到新建好的作业,并在作业设计器中将其打开。
2 配置到HDFS连接及Spark执行
与YARN不同,Spark可以连接到不同的文件存储系统,例如HDFS、AmazonS3或Cassandra。要从HDFS读取数据,首先需要配置到HDFS的连接。
为此,您可以使用存储库中的HDFS连接元数据。元数据也可用于在Spark上配置作业的执行(Execution)。
1)从存储库中,在“元数据>HadoopCluster>MyHadoopCluster>HDFS”下,点击MyHadoopCluster_HDFS并将其拖动到作业设计器。在组件列表中,选择tHDFSConfiguration并点击确定。Hadoop配置更新确认窗口打开。
2)点击确定,允许Studio更新Spark配置以使其和您的集群元数据相对应。
3)在Run视图中,点击SparkConfiguration并检查是否使用存储库中可用的HDFS连接元数据配置执行。
您可以在Spark本地模式、SparkStandalone或SparkonYARN中配置您的作业:
- 本地模式用于在设计阶段测试作业。
- 选择SparkStandalone或SparkonYARN取决于集群上安装的Spark版本。对于本教程,它是YARN上的Spark。
3 从HDFS读取您的数据
现在,您可以连接到HDFS,且您的作业已配置为在集群上执行。对于在Spark上运行的作业,tFileInputDelimited组件允许您从各种文件存储系统读取数据。
1)在作业设计器中,添加tFileInputDelimited。
2)双击该组件,打开tFileInputDelimited组件视图。
3)在存储面板中,确保您已选择了tHDFSConfiguration组件作为存储配置组件。
4)单击编辑模式,打开模式编辑器。
5)将列添加到模式中:点击三次[+]图标并输入列名称CustomerID、FirstName和LastName。
6)修改CustomerID列的类型:点击“类型”字段并选择整数。点击确定保存该模式。
7)单击“文件夹/文件”字段旁边的[…],查找到相应的文件路径,并点击“确定”。
tFileInputDelimited组件现在配置为从HDFS读取客户数据,同时支持其他文件类型,例如AVRO、JSON和XML,并且文件不必被分隔。
4 根据客户ID值对客户数据进行升序排序
1)添加一个tSortRow。
2)使用Main将名为MyHadoopCluster_HDFS的tFileInputDelimited组件连接到tSortRow组件。
3)双击tSortRow组件打开组件视图。
4)单击同步列配置模式。
5)向Criteria表中添加新条件:点击[+]图标并在模式列中键入CustomerID。选择按“num”进行排序,并在Orderasc/desc中,选择asc,即按数字字符进行升序排序。
现在已配置好了tSortRow组件。
5 使用tLogRow组件在控制台显示排序后的数据
1)添加一个tLogRow组件并使用Main将其连接到tSortRow组件。
2)双击tSortRow组件打开组件视图。
3)在“模式”面板中,选择“表格”。
您的作业现在可以运行了。
它将从HDFS中读取数据并对其进行排序,最后将结果展示在控制台中。
6 运行作业,在控制台查看结果
在运行视图中打开基本运行(BasicRun)选项卡并单击运行。
在作业设计器中,请注意作业的百分比在执行结束时应为100%。
排序后的数据显示在控制台中。
评论区(0)