将文件夹从localsystem加载到hdfs

brqmpdu1  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(294)

我的本地系统中有一个文件夹。它包含1000个文件,我会将他从本地系统移动或复制到hdfs
我试着用这两个命令: hadoop fs copyFromLocal C:/Users/user/Downloads/ProjectSpark/ling-spam /tmp 我也试过这个命令: hdfs dfs -put /C:/Users/user/Downloads/ProjectSpark/ling-spam /tmp/ling-spam 它显示一个错误消息,说我的目录没有找到,但我确信这是正确的。
我找到了一个函数getmerge(),可以将文件夹从hdfs移动到localsystem,但没有找到相反的方法。
拜托,你能帮我吗?

3phpmpom

3phpmpom1#

我的virtualbox在windows上运行,我使用hdp2.3.2和控制台secure shell
无法将文件从windows计算机复制到hdfs。您必须首先将文件scp到vm中(我建议使用winscp或filezilla),然后才能使用 hadoop fs 把文件放到hdfs上。
这个错误是正确的 C:/Users/user/Downloads hdp沙盒上不存在,因为它是linux计算机。
如前所述,您也可以尝试使用ambari hdfs文件查看器,但我仍然注意到scp是官方的方式,因为不是所有hadoop系统都有ambari(或者至少是ambari的hdfs文件视图)

vwoqyblh

vwoqyblh2#

我会采取共同的信息分类的单词垃圾邮件或火腿。我有这个操作:mi(word)=∑ 概率(occ,class)log2(概率(occuren,class)/概率(occurren)*概率(class))。我了解函数,我必须计算4个运算(真,ham),(假,ham),(真,spam)和(假,spam)。我不明白我到底写了谁,事实上,我计算了文件中出现的数字。但我不知道我到底要写谁在我的函数。非常感谢你!
这就是我的功能:def computemutualinformationfactor(probawc:rdd[(string,double)],//单词在给定类中出现的概率。probaw:rdd[(string,double)],//单词在类中出现的概率probac:double,//电子邮件在类(spam或ham)中出现的概率probadefault:double//缺少概率时的默认值):rdd[(string,double)]={

相关问题