美文网首页
第2课书面作业

第2课书面作业

作者: keon | 来源:发表于2016-08-14 17:39 被阅读0次

1 在Hadoop集群中编译并运行《权威指南》中的例3.2
2 自行在本地文件系统生成一个大约一百多字节的文本文件,写一段程序(可以利用Java API或C API),读入这个文件,并将其第101-120字节的内容写入HDFS成为一个新文件,提供代码和执行结果演示抓图
3 2的反向操作,在HDFS中生成一个大约一百多字节的文本文件,写一段程序(可以利用Java API或C API),读入这个文件,并将其第101-120字节的内容写入本地文件系统成为一个新文件,提供代码和执行结果演示抓图

1


hadoop.png 运行结果.png

2
package com.keon.hadoop;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
import org.apache.hadoop.util.Progressable;

import java.io.*;
import java.net.URI;

/**

  • Created by keon on 16/8/14.
    */

public class Exercise2 {

static String PATH = "/exercise2_2";
static String PATH_NEW = "/exercise2_2_1";

public static void main(String[] args) throws IOException {
    Configuration conf = new Configuration();

    FileSystem fs = FileSystem.get(URI.create(PATH), conf);

    FSDataInputStream in = fs.open(new Path(PATH));

    System.out.println("读取全部");
    IOUtils.copyBytes(in, System.out, 4096, false);

    byte[] buffer = new byte[20];
    in.read(101, buffer, 0, 20);

    System.out.println("读取101-120,结果");
    System.out.println(new String(buffer));

    in.close();

    InputStream in2 = new ByteArrayInputStream(buffer);
    FileSystem fs2 = FileSystem.get(URI.create(PATH_NEW), conf);
    OutputStream out2 = fs2.create(new Path(PATH_NEW), new Progressable() {
        @Override
        public void progress() {
            System.out.print("...");
        }
    });

    System.out.print("读取写入:");
    IOUtils.copyBytes(in2, out2, 4096, true);
}

}

运行结果.png hadoop.png

3
package com.keon.hadoop;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
import org.apache.hadoop.util.Progressable;

import java.io.*;
import java.net.URI;

/**

  • Created by keon on 16/8/14.
    */

public class Exercise3 {

static String PATH = "/exercise2_3";
static String PATH_NEW = "output/exercise2_3_1";

static String content = "别让生活的压力挤走快乐:不管昨天发生了什么,不管昨天的自己有多难堪,有多无奈,有多苦涩,都过去了,不会再来,也无法更改。就让昨天把所有的苦、所有的累、所有的痛远远地带走吧,而今天,我要收拾心情,重新上路!";

public static void main(String[] args) throws IOException {
    Configuration conf = new Configuration();

    InputStream in = new ByteArrayInputStream(content.getBytes());
    FileSystem fs = FileSystem.get(URI.create(PATH), conf);
    OutputStream out = fs.create(new Path(PATH), new Progressable() {
        @Override
        public void progress() {
            System.out.print("...");
        }
    });
    System.out.print("写入中:");
    IOUtils.copyBytes(in, out, 4096, true);
    System.out.println("");

    FSDataInputStream in2 = fs.open(new Path(PATH));

    System.out.println("读取全部");
    IOUtils.copyBytes(in2, System.out, 4096, false);

    byte[] buffer = new byte[20];
    in2.read(101, buffer, 0, 20);
    in2.close();

    System.out.println("读取101-120,结果");
    System.out.println(new String(buffer));

    File file = new File(PATH_NEW);
    if (!file.exists()) {
        file.createNewFile();
    }
    FileOutputStream fop = new FileOutputStream(file);
    fop.write(buffer);
    fop.flush();
    fop.close();
}

}

运行结果.png hadoop.png

相关文章

  • 第2课书面作业

    1 在Hadoop集群中编译并运行《权威指南》中的例3.22 自行在本地文件系统生成一个大约一百多字节的文本文件,...

  • 第4课书面作业

    1 下载气象数据集部分数据(下载地址:http://www1.ncdc.noaa.gov/pub/data/noa...

  • 第13课书面作业

    1 安装sqoop,并且把Mysql中的表数据导出到HDFS下的文本文件里,整个过程抓图2 安装flume或chu...

  • 2021.9.30

    “严控书面作业总量” 全面压减作业总量和时长,确保小学一二年级不布置书面家庭作业,其他年级每天书面作业完成时间平均...

  • 书面作业一

    花了半天的时间看完了老师推荐的《非暴力沟通》,在其中看到了许多我和龚老师第一次通话时,老师提到的“倾听”“理解”“...

  • 亲子日记第六十七篇 口语作业也是作业

    老师布置作业一般以书面作业为主,有时也布置口语作业。闺女对书面作业还是很重视的,认真对待,对于那些口语作业...

  • 暑假小结

    暑假小结 暑假马上过去了,做个小结 1:书面作业 学校布置的书面作业7.15日写完了,实践作业还差一些,因为英语不...

  • 一处小学作业管理规定

    一处小学作业管理规定 一、严控作业总量,减轻学生课业负担 (一)严控书面作业总量一、二年级不留书面家庭作业,教师根...

  • 关于低年级不布置家庭书面作业个人的一点想法

    我个人同意学生高效完成作业,但是我认为高效完成作业和布置书面家庭作业是不冲突的。一二年级不布置书面家庭作业,是...

  • 只有要写的才叫作业吗?

    关于一、二年级不留书面作业我非常赞成。不是只有书面作业才叫作业!听、读同样是作业,对一、二年级来说,语文、...

网友评论

      本文标题:第2课书面作业

      本文链接:https://www.haomeiwen.com/subject/vgmysttx.html