mapreduce 实现单词的个数统计

数据形式:
第一行 ABCDE
第二行 CDEF

利用mapreduce统计出现单词的个数(ABCDEF一共6个单词)

0

2个回答

这不需要mapreduce 直接map输出就可以了,reduce用不到吧。

0
import java.io.*;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;

public class WordCount
{
    public static class WordCountMapper
    extends Mapper<Object,Text,Text,IntWritable>
   {
       private final static IntWritable one = new IntWritable(1);
       private Text word = new Text();
       public void map(Object key,Text value,Context context)  
        throws IOException, InterruptedException {
String[] words = value.toString().split(",");
 for (String str: words)
           {
                         //去除空格,防止越界
                 String ss=str.replace(" ","");
                   for(int i=0;i<ss.length();i++){
                        word.set(str.substring(i,i+1));  
                        context.write(word,one);
                   }
            }
    }
}
 public static class WordCountReducer extends Reducer<Text,IntWritable,Text,IntWritable> {
  public void reduce(Text key,Iterable<IntWritable> values,Context context) throws IOException, InterruptedException {
          int total=0;
        for (IntWritable val : values){
            total += val.get();
         }
IntWritable sum = new IntWritable(total);
context.write(key, sum);
       }   
     }
//INPUT_PATH:文件在hdfs上的路径
private static final String INPUT_PATH = "/mr.txt";
//OUTPUT_PATH:文件输出路径
private static final String OUTPUT_PATH = "/mr/out/";
public static void main (String[] args) throws Exception{
Configuration conf = new Configuration(); 
conf.set("mapred.jar","wc.jar");
Job job = new Job(conf, "word count");
job.setJarByClass(WordCount.class);
job.setMapperClass(WordCountMapper.class);
job.setReducerClass(WordCountReducer.class);
job.setOutputKeyClass(Text.class);
job.setOutputValueClass(IntWritable.class);
FileInputFormat.setInputPaths(job, INPUT_PATH);
FileOutputFormat.setOutputPath(job, new Path(OUTPUT_PATH));
 }
}
0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Hadoop-MapReduce初步应用-统计单词个数
关于hadoop在电脑上安装的过程,请参考我的上一篇博文: nHadoop-利用java API操作HDFS文件我的安装和配置环境是Windows下伪分布模式hadoop下使用eclipse进行开发。 n上面的文中有关于安装和配置hadoop的视频和安装软件所需的全部资料。下面是我们本文重点。统计文件中单词的个数。我们再看Hadoop的一般书籍中,基本都会把这个程序作为hadoop的MapReduc
Mapreduce实例---统计单词个数(wordcount)
实例:统计每个单词在数据集中出现的次数nn nn数据流程:nnnn nn代码:nnMapper类的实现:nnnn nnReducer类的实现:nnnn nnJob提交客户端实现:nnnnnn然后我们需要通过Maven的工具窗口打包  直接双击即可nnnn nn点击这里nnnn nn找到 nn nn nnnn完成后我们运行即可,然后可以操作xshell命令 Cat  查看这个output2,如下即统...
Hadoop MapReduce 单词统计示例
前言nnn 百度词条n n MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念”Map(映射)”和”Reduce(归约)”,是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的...
【MapReduce实例】单词统计
一、实例描述计算出文件中各个单词的频数,要求输出结果按照单词出现的频数进行降序。 n比如,输入文件 nfile1.txt,其内容如下:n hello word bye worldnfile2.txt,其内容如下:n hello hadoop goodbye hadoopn对应上面给出的输入样例,其输出样例为:n 2 hadoop n 2 hello n 2 worl
mapreduce实例--统计文本中的单词数
mapreduce实例–统计文本中的单词数nnnn一:环境描述:nnhadoop2.8.1 n文件上传至hdfs,程序从hdfs读取计算,计算结果存储到hdfsnnnn二:前期准备nnnn2.1 上传文件word.txt至hdfsnnword.txt 文件内容:nnnnCould not obtain block, Could not obtain block, Could not obtain ...
Shell脚本实现MapReduce统计单词数程序
一、原理介绍nnn概述nHadoop Streaming是Hadoop提供的一个编程工具,它允许用户使用任何可执行文件或者脚本文件作为Mapper和Reducer,例如:n采用shell脚本语言中的一些命令作为mapper和reducer(cat作为mapper,wc作为reducer)nn$HADOOP_HOME/bin/hadoop jar $HAD...
MapReduce之单词(字母)个数的统计
package com.hadoop.study;rnrnimport java.io.IOException;rnimport java.util.StringTokenizer;rnrnimport org.apache.hadoop.conf.Configuration;rnimport org.apache.hadoop.fs.Path;rnimport org.apache.hadoop
mapreduce英语单词频次统计与单词个数统计(云计算实验作业20180517)
课程原地址:http://hbust.shiyanbar.com/course/91079上课老师:李歆实验时间:20180517地点:云桌面实验人:郭畅 【实验目的】1) 理解mapreduce执行原理2) 理解map,reduce阶段3) 熟悉map和reduce代码的编写【实验原理】需求:对下面原始数据进行处理,把文档中所有的英文单词进行统计相同单词的个数。原始数据:The ASF prov...
MapReduce统计文本单词,逆序输出统计结果
1、准备数据nnwordcount2.txtnnnThey say we are what we arenBut we do not have to benI am bad behavior but I do it in the best waynI will be the watchernOf the eternal flamenI will be the guard dognof all y...
利用Hadoop MapReduce实现单词统计——Wordcount
Hadoop MapReduce实现单词统计——Wordcount环境:Centos 7系统+IDEA本程序是利用IDEA中的Maven来实现的,主要是因为Maven省去了在本地搭建Hadoop环境的麻烦,只需要在配置文件中进行相应的配置即可。如果你还没有安装IDEA,可以参考Linux下如何安装IntelliJ IDEA本(1)新建java Project ,并命名为WordCount。如果不知...
MapReduce 单词统计
n                                                                       使用hadoop2.7.4nn1,首先准备数据,在网上随便抄了一段文章nnn有一天,n一个外来的僧人要到对面村庄去,n临行前村民反复叮嘱他说:n路途中如若看到路标被风刮倒或被掩埋,n要重新树立起来,以免后面的人迷失方向。n僧人刚上路时,n牢牢记着村民嘱咐,...
一个单词统计的实例,怎样通过MapReduce完成排序?
假设有一批海量的数据,每个数据都是由26个字母组成的字符串,原始的数据集合是完全无序的,怎样通过MapReduce完成排序工作,使其有序(字典序)呢?
MapReduce实例——wordcount(单词统计)
1. MR实例开发整体流程n最简单的MapReduce应用程序至少包含 3 个部分:一个 Map 函数、一个 Reduce 函数和一个 main 函数。在运行一个mapreduce计算任务时候,任务过程被分为两个阶段:map阶段和reduce阶段,每个阶段都是用键值对(key/value)作为输入(input)和输出(output)。main 函数将作业控制和文件输入/输出结合起来。nn2. 环境...
彷徨 | MapReduce实例四 | 统计每个单词在每个文件里出现的次数
示例:一个目录下有多个文件,每个文件里有相同的单词,统计每个单词在每个文件里出现的次数nn即同一个单词在不同文件下的词频统计nn文件目录如下:nnnn各文件内容片断:nnnnnnnnnn要求结果如下:及同一个单词在不同文件下的词频统计nnnn思路:nn第一步:我们可以先将单词和文件名作为key,将出现次数作为value,统计每个单词在每个文件里出现的次数nn例:nnnMybatis-a.txt 6...
通过MapReduce统计每个单子在每个文件中出现的次数(FileSplit的使用),单词作为key,所在文本和次数作为value进行统计
代码如下:package cn.toto.bigdata.mr.index;nnimport java.io.IOException;nnimport org.apache.hadoop.conf.Configuration;nimport org.apache.hadoop.fs.Path;nimport org.apache.hadoop.io.IntWritable;nimport org.
用Hive实现MapReduce的单词统计
一个简单的单词统计在用MapReduce来实现虽然是经典用例,但是现实起来还是比较复杂的。下面介绍如何用hive来实现单词统计。首先准备一个记录单词的word.txt然后在hive中新建一个表并将word.txt的数据导入到该表中然后运行如下的命令select tt.wordtxt,count(*) cc from ( select explode(split(line,' ')) as word...
[hadoop]简单的MapReduce项目,计算文件中单词出现的次数(五)
计算文件中单词出现的次数,试题如下图n1、创建读取单词的文件tast,内容如下:nnhadoop core map reduce hiv hbase Hbasenpig hadoop mapreduce MapReduce Hadoop Hbasensparkn2、流程图如下:nnn根据上图得知,计算流程中Mapping和Reducing是需要自己编写功能,其他交给Map/Redu
模拟MapReduce编程的程序案例(用于统计文本中单词出现频率)
本案例要实现的目标:1、模拟修改配置,通过发指令的方式统计一个文件中出现的单词的字数。案例代码结构如下:在整个案例中需要有以下几类文件:A:worker服务端,用于类似Mapreduce接收jar,接收配置文件,执行业务逻辑B:程序客户端、用于组装配置文件、发送业务执行的命令(听过socket发送jarfile、jobconf、和job2run的命令)代码结构,每个包和代码作用介绍 cn.to
MapReduce统计以某字母开头的单词的平均长度
MapReduce统计以某字母开头的单词的平均长度n用MapReduce编写程序主要的就是编写Map和Reduce函数、main函数njava代码如下npackage section1;nnimport java.io.IOException;nimport java.util.StringTokenizer;nnimport org.apache.hadoop.conf.Configuratio...
MapReduce之WordCount单词计数(上)
一 需求rn1、计算文件中出现每个单词的频数rn2、输出结果按照字母顺序进行排序rn rn二 测试样例rnn rn rn三 Map过程rnn rn rn四 Reduce过程rn rnn rnn nn n n n n n n n 大小: 116.1 KBn n n n n
python 实现mapreduce词频统计
python实现mapreduce词频统计 执行方式:打开cmd命令,cd到代码所在文件夹,输入python wordcout_map.py > words.txt | sort | python wordcout_reduce.py执行
Hadoop:使用原生python编写MapReduce来统计文本文件中所有单词出现的频率功能
Python编写的MapReduce程序——统计文本文件中所有单词出现的频率功能。
MapReduce——WordCount案例(统计单词个数)
一、MapReduce概念nnMapreduce是一个分布式运算程序的编程框架,是用户开发“基于hadoop的数据分析应用”的核心框架;nnMapreduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个hadoop集群上。nnnn二、MapReduce核心思想nnnn1)分布式的运算程序往往需要分成至少2个阶段nn2)第一个阶段的maptask并...
和我一起学Hadoop(五):MapReduce的单词统计,wordcount
mapred 单词统计
大数据(十二) --使用MapReduce和SparkCore技术实现单词统计(WorldCount)案例
WorldCount案例示例数据需求分析计算分析MapReduce实现SparkCore实现n示例数据n需求分析n计算分析nMapReduce实现nSparkCore实现nn
MapReduce——统计单词出现次数WordCount
package com.oracle.WorldCount;nnimport org.apache.hadoop.conf.Configuration;nimport org.apache.hadoop.fs.FileSystem;nimport org.apache.hadoop.fs.Path;nimport org.apache.hadoop.io.IntWritable;nimport o...
hive实现单词统计
参考博客:一个hive小案例:使用HIVE进行单词统计, 并把结果存入mysqlnn问题:统计客户某个年龄有多少人nn客户表信息nnhive&amp;gt; desc customer_info;nOKnid intnname stringnage intnTime taken: 0.2...
mapreduce 单词统计 案例
mapreduce 单词统计 案例rn一、Hadoop MapReduce 构思体现在如下的三个方面:rn1.如何对付大数据处理:分而治之rn2.构建抽象模型:Map 和 ReducernMap: 对一组数据元素进行某种重复式的处理;rnReduce: 对 Map 的中间结果进行某种进一步的结果整理。rnMapReduce 处理的数据类型是&lt;key,value&gt;键值对rn3.统一构架,隐藏系统层细节...
MapReduce框架统计单词次数
在eclipse中新建java工程mapreducern1)导入包如下rnhadoop-2.8.5\share\hadoop\hdfs\hadoop-hdfs-2.8.5.jarrnhadoop-2.8.5\share\hadoop\hdfs\lib\\*rnhadoop-2.8.5\share\hadoop\common\hadoop-common-2.8.5.jarrnhadoop-2.8.5\shar...
用Mapreduce实现单词个数统计
n n n 首先有三个文件 red_new.py map_new.py run.shn代码如下nmap_new.pynimport sysnnnfor line in sys.stdin: // //系统模块n ss = line.strip().split(' ') ////我们读的每一句话都按空格分开,strip()避免输入的 字符串有回车,制表符等...
使用map&set统计单词个数
统计输入字符串中的特定单词的个数n//或者统计除特定单词之外的个数
使用Mapreduce案例编写用于统计文本中单词出现的次数的案例、mapreduce本地运行等,Combiner使用及其相关的知识,流量统计案例和流量总和以及流量排序案例,自定义Partitioner
工程结构:在整个案例过程中,代码如下:WordCountMapper的代码如下: package cn.toto.bigdata.mr.wc;   import java.io.IOException;   import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.LongWritable; impor
MapReduce做词频率统计
WordCount堪称大数据界的HelloWorldrnrnrnrnrn 移除点击此处添加图片说明文字rn​今天来学习搭建hadoop开发环境。并且制作一个本地测试版本的WordCount,稍后我们将会来开发实际项目,在此之前,我们需要了解mapreduce所能做的事情。rn先介绍一下业务需求假如我们有这样一个文件:rnhadoop hello worldrnhello hadooprnhbase
初学Hadoop,统计Top10单词
课程明明叫SeachTechnology,本以为可以趁机好好学一下Lucene和Nutch,结果Project却是使用分布式计算框架Map/Reduce的开源项目Hadoop进行文档关键词的自动提取,算了,既来之则安之,都是Doug Cutting的作品啊。rnProject要求是给定250个文章的摘要(trial data),通过三个步骤rn1.preprocessing such as Par...
一个利用mapreduce思想单词计数的实例
n n n 这里写得是,如果利用mapreduce分布式的计算框架来写一个单词计数的demo。比如说,给出一个文件,然后,输出是统计文件里面所有的单词出现的次数。nmap 函数npackage mapreduce;nimport java.io.IOException;nimport org.apache.hadoop.io.IntWritable;nimport o...
map/reduce操作Hbase 进行单词个数统计例子
MapReduce操作Hbase 进行单词个数统计例子 n参考url:https://blog.csdn.net/zhangyunfeixyz/article/details/78549712nncentos7集群环境情况nnmaster 192.168.145.180 namenode,datanode,zookeeper,hmaster,hregionserver nslave1 19...
C++统计单词个数及排序:容器按照value排序
例:给定一段英语文本,要求对其中单词出现的个数按照从小到大进行排序,出现次数相同的按照首字母顺序排列。算法实现:#include <iostream>n#include <algorithm>n#include <vector>n#include <unordered_map>n#include <map>n#include <fstream>using namespace std;ntypedef
MapReduce算法设计-计算单词共现矩阵
利用MapReduce计算单词共现矩阵
hadoop2.7.1下的单词统计
hadoop2.7.1下的单词统计(hadoop自带jar包)rnrn注意:(本文的路径有点长,要注意对应的路径)rn1、搭建好了集群式hadoop以后,测试一下小程序,本文测试的是hadoop的Wordcount程序,也就是一个简单的单词统计程序。先启动hadooprnrnrn2、hadoop的Wordcount程序是hadoop自带的一个小小的案例,可以在hadoop的解压包里找到这个jar文
mapreduce统计数据库中的单词个数
1、建立数据库表rnrnrnrnrn2、导入jar包rnmysql-connector-java-5.1.38.jarrnrn3、创建实体类rnpackage com.cr.jdbc;nnimport org.apache.hadoop.io.Writable;nimport org.apache.hadoop.mapred.lib.db.DBWritable;nnimport java.io.D
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java单词学习 大数据基础单词