可能是一个新手问题,但除了将文件复制到本地并通过Unix读取之外,是否有一种方法可以读取HDFS中文件的内容?
所以现在我正在做的是:
bin/hadoop dfs -copyToLocal hdfs/path local/path
nano local/path
我想知道是否可以直接打开HDFS文件,而不是先将其复制到本地再打开。
可能是一个新手问题,但除了将文件复制到本地并通过Unix读取之外,是否有一种方法可以读取HDFS中文件的内容?
所以现在我正在做的是:
bin/hadoop dfs -copyToLocal hdfs/path local/path
nano local/path
我想知道是否可以直接打开HDFS文件,而不是先将其复制到本地再打开。
我认为hadoop fs -cat <file>
可以完成这个任务。
hdfs dfs -cat <file>
hadoop dfs -cat <filename> or hadoop dfs -cat <outputDirectory>/*
ssh hadoop@emrClusterIpAddress -i yourPrivateKey.ppk
/usr/lib/spark/bin/spark-shell --conf spark.eventLog.enabled=true --conf spark.eventLog.dir=hdfs://yourEmrClusterIpAddress:8020/eventLogging --class org.apache.spark.examples.SparkPi --master yarn --jars /usr/lib/spark/examples/jars/spark-examples_2.11-2.4.0.jar
列出我们刚创建的目录的内容,现在应该有一个新的日志文件记录了我们刚才运行的内容
[hadoop@ip-1-2-3-4 bin]$ hdfs dfs -ls /eventLogging Found 1 items -rwxrwx--- 1 hadoop hadoop 53409 2019-05-21 20:56 /eventLogging/application_1557435401803_0106
现在可以查看该文件,运行命令 hdfs dfs -cat /eventLogging/application_1557435401803_0106
资源: https://hadoop.apache.org/docs/r2.7.3/hadoop-project-dist/hadoop-hdfs/HDFSCommands.html
我通常使用
$ hdfs dfs -cat <filename> | less
$ hdfs dfs -cat <filename> | grep <search_word>
我试图弄清楚上述命令,但对我来说无法读取文件。 但是这个可以,
cat <filename>
cat data.txt