将CSV数据导入Hadoop

目前,我正在尝试将数据提取到hdfs。我尝试提取的数据类型为csv。 在ubuntu上安装了Hadoop 3.1.1。 数据样本存储在/home/hadoop/test.csv

我尝试过

source1

hadoop@ambari:~$ hdfs dfs -put /home/hadoop/test.csv user/data/test.csv
put: `user/data/test.csv': No such file or directory: `hdfs://xxxx:8020/user/hadoop/user/data/test.csv'

所以我将其修改为test.csv并返回

hadoop@ambari:~$ hdfs dfs -put /home/hadoop/test.csv test.csv
put: `test.csv': No such file or directory: `hdfs://xxxx:8020/user/hadoop/test.csv'

因为据记载,没有目录我跟随另一个来源建立目录 source2 source3

hadoop@ambari:~$ hadoop fs -mkdir bdp
mkdir: `hdfs://xxxx:8020/user/hadoop': No such file or directory
hadoop@ambari:~$ hadoop fs -mkdir /user/hadoop/in
mkdir: `hdfs://xxxx:8020/user/hadoop': No such file or directory

iCMS 回答:将CSV数据导入Hadoop

@yuliansen

将文件从本地磁盘复制到hdfs的命令如下:

hdfs dfs -copyFromLocal /home/hadoop/test.csv /user/data/

如果未将文件夹创建为hdfs或root用户,请执行以下操作:

hdfs dfs -mkdir /user/data

如果您以用户“数据”的身份执行hdfs dfs -copyFromLocal命令,请执行以下操作:

hdfs dfs -chown data:hdfs /user/data

如果您以“ hadoop”用户身份执行命令,则需要确保将/home/hadoop/test.csv和/ user / data都限制为hadoop用户:

chown hadoop:hadoop /home/hadoop/test.csv
hdfs dfs -chown hadoop:hdfs /user/data

一旦您拥有正确的源文件和hdfs位置,就可以执行hdfs dfs -copyFromLocal

本文链接:https://www.f2er.com/2223980.html

大家都在问