网红

实训课KNIME的HDFS操作

2019-11-08 18:53:57来源:励志吧0次阅读

1、实验摘要

实验目的:学习KNIME的HDFS简单操作,文件上传、下载和删除。

实验内容:连接HDFS;上传文件到HDFS;从HDFS下载文件;

2、实验步骤

(1)这次实验我们将介绍如何使用KNIME连接Hadoop hdfs进行一些简单的操作。全部工作流的概览以下:

实训课KNIME的HDFS操作

(2)首先,使用“HDFS Connection”节点连接到我们的Hadoop文件系统。具体的设置如下图所示。“Host”填写集群master节点的ip地址(这里由于我们在client上做了host映照,所以填写的是master的hostname);“port”填写HDFS的端口(一般是9000或8020),可以通过查看hadoop的配置文件core-site.xml获得;“User”填写实行操作的用户名,确保该用户存在且具有相应的读写权限。

实训课KNIME的HDFS操作

填写终了后,测试连接,成功的话会出现以下的提示:

实训课KNIME的HDFS操作

(3)下面,我们使用“Data Generator”节点生成一些数据,然后用“CSV Writer”写到指定目录下。“Data Generator”采用默认设置,“CSV Writer”只修改存储路径,并将该路径存成一个变量,以供以后的节点使用,具体设置以下:

(4)以后,我们要对文件存储的路径进行一些处理,然后传给“Upload”节点。由于“CSV Writer”提供的地址是String类型的,而“Upload”接收的参数是Url类型,所以我们要使用“Variable to Table Row”和“String to URL”两个节点将文件地址转成Url类型。

右击“CSV Writer”节点,选择“Show Flow Variable ports”,然后将节点右上角的“Outport”和“Variable to Table Row”相连:

(5)选择“Upload”节点,连接“HDFS Connection”和“String to URL”。相干设置如下图,“Target folder”为hdfs的文件路径(根据实际情况修改,注意user对文件夹的操作权限),“Source”为文件源地址,由输入变量控制。

履行成功后,我们在远端的HDFS中可以看到已上传的文件:

(6)选择“List Remote Files”节点,列出远端的HDFS的文件目录。这里,我们将上一步中“Upload”的Source源地址作为变量传入到“List Remote Files”节点中。有了变量控制,“List Remote Files”节点就必须在“Upload”履行成功后才能实行。

结果显示:

(7)使用“Table Row to Variable”将文件路径转换为变量,传给“Download”节点。执行“Download”从HDFS将之前上传的文件下载下来。

通过“CSV Reader”读取下载的文件。使用“Table Different Check”节点比较该文件和原文件。执行成功,代表上传的文件和原文件没有差别,不存在数据丢失,原文件成功上传到HDFS。

(8)使用“Delete Files”节点删除文件。由于有Input变量控制,所以只有在“Download”节点从HDFS将该文件成功下载后,删除操作才会履行:

结语:下次实验,我们将介绍Hive的相干操作。

goldviagra胶囊

正品伟哥

femaleviagra水的

分享到:
  • 友情链接
  • 合作伙伴