Hdaoop HDFS 编程 Hshell

m0_62528150:

try {

FileSystem fs = FileSystem.get(new URI("hdfs://master:9000"), new Configuration());

Path srcPath = new Path(outputPath+"/part-r-00000");

FSDataInputStream is = fs.open(srcPath);

System.out.println("Results:");

while(true) {

String line = is.readLine();

if(line == null) {

break;

}

System.out.println(line);

}

is.close();

}catch(Exception e) {

e.printStackTrace();

}

}

}

Hdaoop HDFS 编程 Hshell

m0_62528150:

import java.io.IOException;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.fs.Path;

import org.apache.hadoop.io.LongWritable;

import org.apache.hadoop.io.Text;

import org.apache.hadoop.mapreduce.Job;

import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;

import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;

import java.util.Scanner;

import org.apache.hadoop.fs.FSDataInputStream;

import org.apache.hadoop.fs.FileSystem;

import java.net.URI;

/***

* 1:用来描述一个特定的作业

* 比如,该作业使用哪个类作为逻辑处理中的map,那个作为reduce

* 2:还可以指定该作业要处理的数据所在的路径

* 还可以指定改作业输出的结果放到哪个路径

* @author Administrator

*

*/

public class WcRunner{

public static void main(String[] args) throws IOException, ClassNotFoundException, InterruptedException {

//创建配置文件

Configuration conf = new Configuration();

//获取一个作业

Job job = Job.getInstance(conf);

//设置整个job所用的那些类在哪个jar包

job.setJarByClass(WcRunner.class);

Hdaoop HDFS 编程 Hshell

m0_62528150:

import java.io.IOException;

import org.apache.hadoop.io.LongWritable;

import org.apache.hadoop.io.Text;

import org.apache.hadoop.mapreduce.Reducer;

/***

*

* @author Administrator

* 1:reduce的四个参数,第一个key-value是map的输出作为reduce的输入,第二个key-value是输出单词和次数,所以

* 是Text,LongWritable的格式;

*/

public class WcReduce extends Reducer{

//继承Reducer之后重写reduce方法

//第一个参数是key,第二个参数是集合。

//框架在map处理完成之后,将所有key-value对缓存起来,进行分组,然后传递一个组,调用一次reduce方法

//

@Override

protected void reduce(Text key, Iterable values,Context context)

throws IOException, InterruptedException {

//将values进行累加操作,进行计数

long count = 0;

//遍历value的list,进行累加求和

for(LongWritable value : values){

count += value.get();

}

//输出这一个单词的统计结果

//输出放到hdfs的某一个目录上面,输入也是在hdfs的某一个目录

context.write(key, new LongWritable(count));

}

关于STM32定时器向上计数和中心对齐模式的验证

CSDN-Ada助手:

恭喜您写了第14篇博客!标题听起来很有技术含量,我很期待阅读您对STM32定时器向上计数和中心对齐模式的验证的探讨。您的持续创作精神真是值得称赞!对于下一步的创作建议,我谨建议您可以进一步探索其他相关主题,例如STM32定时器的其他工作模式或者与其他外设的配合应用。期待您的新作品,继续加油!

Ubuntu安装Java环境

CSDN-Ada助手:

不知道 Java 技能树是否可以帮到你:https://edu.csdn.net/skill/java?utm_source=AI_act_java