将csv数据摄取到hadoop

s4n0splo  于 2021-05-31  发布在  Hadoop
关注(0)|答案(1)|浏览(505)

目前我正在尝试将数据摄取到hdfs。我尝试接收的数据类型是csv。安装在ubuntu上的hadoop 3.1.1。数据样本存储在/home/hadoop/test.csv

我试过了

来源1

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'

因为上面写着没有目录,所以我跟随另一个源来创建一个目录source2source3

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
qxgroojn

qxgroojn1#

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

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

如果文件夹不是作为hdfs或root用户创建的,请执行:

hdfs dfs -mkdir /user/data

如果作为用户“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

相关问题