摄取csv数据到hadoop。

问题描述 投票:0回答:1

目前,我正试图摄取数据到hdfs。我试图摄取的数据类型是csv。Hadoop 3.1.1安装在ubuntu上,数据样本存储在homehadooptest.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'

因为它写道,没有目录,我按照另一个来源,使一个目录。来源2 来源3

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

csv ubuntu hadoop bigdata data-ingestion
1个回答
2
投票

@yuliansen

从本地磁盘复制文件到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 "的身份执行该命令,那么你需要确保homehadooptest.csv和userdata都是chowned给用户hadoop的。

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

一旦你确定了源文件和hdfs位置的正确性 然后你就可以执行hdfs dfs -copyFromLocal命令了

© www.soinside.com 2019 - 2024. All rights reserved.