赞
踩
本关任务:使用Hadoop命令来操作分布式文件系统。
为了完成本关任务你需要了解的知识有:1.HDFS的设计,2.HDFS常用命令。
点点点…题目省略,懒得写了,下同
在右侧命令行中启动Hadoop,进行如下操作。
平台会查看你本地的文件和HDFS的文件是否存在,如果存在,则会将其内容输出到控制台。
预期输出:
HDFS的块比磁盘的块大,其目的是为了最小化寻址开销。
HDFS的块比磁盘的块大,其目的是为了最小化寻址开销。
//一行一步 start-dfs.sh hadoop fs -mkdir -p /usr/output mkdir -p /develop/input cd /develop/input touch hello.txt vim hello.txt 按i键输入以下内容 HDFS的块比磁盘的块大,其目的是为了最小化寻址开销。 hadoop fs -put hello.txt /usr/output/ hadoop fs -rmr /user/hadoop cd mkdir -p /usr/local hadoop fs -copyToLocal /usr/output/hello.txt /usr/local
本关任务:使用HDFS的Java接口进行文件的读写,文件uri地址为hdfs://localhost:9000/user/hadoop/task.txt。
在右侧代码编辑区中编写代码实现如下功能:
点击评测,平台会通过脚本创建/user/hadoop/task.txt文件并添加相应内容,无需你自己创建,开启hadoop,编写代码点击评测即可。因为Hadoop环境非常消耗资源,所以你如果一段时间不在线,后台会销毁你的镜像,之前的数据会丢失(你的代码不会丢失),这个时候需要你重新启动Hadoop。
预期输出:
WARN [main] - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
怕什么真理无穷,进一寸有一寸的欢喜。
第一行打印出来的是log4j的日志警告,可以忽略。
package step2; import java.io.IOException; import java.io.InputStream; import java.net.URI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IOUtils; public class FileSystemCat { public static void main(String[] args) throws IOException { //请在Begin-End之间添加你的代码,完成任务要求。 //请按照左侧的编程要求进行编写代码 //文件地址为 "hdfs://localhost:9000/user/hadoop/task.txt" /********* Begin *********/ URI uri =
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。