返回顶部
首页 > 资讯 > 精选 >hbase如何编写mapreduce
  • 844
分享到

hbase如何编写mapreduce

2023-06-02 21:06:58 844人浏览 泡泡鱼
摘要

这篇文章主要为大家展示了“HBase如何编写mapReduce”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“hbase如何编写mapreduce”这篇文章吧。package com.h

这篇文章主要为大家展示了“HBase如何编写mapReduce”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“hbase如何编写mapreduce”这篇文章吧。

package com.hbase.test;import java.io.IOException;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;import org.apache.hadoop.hbase.client.Mutation;import org.apache.hadoop.hbase.client.Put;import org.apache.hadoop.hbase.client.Result;import org.apache.hadoop.hbase.client.Scan;import org.apache.hadoop.hbase.io.ImmutableBytesWritable;import org.apache.hadoop.hbase.mapreduce.TableMapReduceUtil;import org.apache.hadoop.hbase.mapreduce.TableMapper;import org.apache.hadoop.hbase.mapreduce.TableReducer;import org.apache.hadoop.hbase.util.Bytes;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;public class HbaseMrTest {public static void main(String[] args) throws IOException, ClassNotFoundException, InterruptedException {Configuration conf =  HBaseConfiguration.create();//配置confconf.set("hbase.ZooKeeper.quorum", "bigdata01,bigdata02,bigdata03");conf.set("hbase.zookeeper.property.clientPort", "2181");Job job = Job.getInstance(conf, "Word-count");//指定执行job的主类job.setjarByClass(HbaseMrTest.class);Scan scan = new Scan();//定义mapper需要扫描的列scan.addColumn(Bytes.toBytes("content"), Bytes.toBytes("words"));//配置mapperTableMapReduceUtil.initTableMapperJob("wordcount", scan,HMapper.class , Text.class, IntWritable.class, job);//配置recuderTableMapReduceUtil.initTableReducerJob("result", HReducer.class, job);//提交jobSystem.exit(job.waitForCompletion(true)?0:1);}}// Text, IntWritable 为输出类型class HMapper extends TableMapper<Text, IntWritable>{Text out = new Text();IntWritable iw = new IntWritable(1);@Overrideprotected void map(ImmutableBytesWritable key, Result value,Mapper<ImmutableBytesWritable, Result, Text, IntWritable>.Context context)throws IOException, InterruptedException {//通过result 直接过得content:words 的值byte[] bytes =  value.getValue(Bytes.toBytes("content"), Bytes.toBytes("words"));if(bytes!=null) {String words = Bytes.toString(bytes);//对获得的一行单词进行分割String[] ws = words.split(" ");for(String wd : ws) {out.set(wd);//写出值,如: you 1context.write(out, iw);}}}}// Text, IntWritable 为mapper的输出类型class HReducer extends TableReducer<Text, IntWritable, ImmutableBytesWritable>{@Overrideprotected void reduce(Text text, Iterable<IntWritable> iter,Reducer<Text, IntWritable, ImmutableBytesWritable, Mutation>.Context context)throws IOException, InterruptedException {int sum = 0 ;//对iter遍历for(IntWritable intw : iter) {sum+= intw.get();}//new 一个put 构造函数内的值为row keyPut put = new Put(Bytes.toBytes(text.toString()));//put添加columnfamily 和columnput.addColumn(Bytes.toBytes("info"), Bytes.toBytes("wordcnt"), Bytes.toBytes(String.valueOf(sum)));//将每个单词当做row key 写出,put是相加的总和context.write(new ImmutableBytesWritable(Bytes.toBytes(text.toString())), put);}}最后将java文件export为RaunableJar放到linux java -jar hbase.jar com.hbase.test.HbaseMrTest 运行

原始数据:hbase如何编写mapreduce

运行结果:

hbase如何编写mapreduce

以上是“hbase如何编写mapreduce”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: hbase如何编写mapreduce

本文链接: https://lsjlt.com/news/231288.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • hbase如何编写mapreduce
    这篇文章主要为大家展示了“hbase如何编写mapreduce”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“hbase如何编写mapreduce”这篇文章吧。package com.h...
    99+
    2023-06-02
  • MapReduce如何读写HBASE
    小编给大家分享一下MapReduce如何读写HBASE,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!import java.io.IOException;impo...
    99+
    2023-06-03
  • 深入探究如何使用Java编写MapReduce程序
    目录MapReduce的原理Map阶段Reduce阶段Shuffle阶段MapReduce程序实现总结 MapReduce的原理 MapReduce由两个主要阶段组成:Map和Red...
    99+
    2023-05-19
    Java编写MapReduce程序 Java编写MapReduce Java MapReduce
  • Java编写Mapreduce程序过程浅析
    目录Maven项目下所需依赖数据类型一、Mapper类二、Reducer类三、执行类程序执行结果一个Maprduce程序主要包括三部分:Mapper类、Reducer类、执行类。 M...
    99+
    2023-05-20
    Java编写MapReduce程序 Java编写MapReduce Java MapReduce
  • MapReduce引擎如何实现
    今天就跟大家聊聊有关MapReduce引擎如何实现,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。   MapReduce引擎怎么实现  使用例子见下...
    99+
    2024-04-02
  • 如何编写html
    HTML(Hypertext Markup Language)是一种用于构建网页的标记语言,它是构建网页的基础。在本文中,我们将介绍如何编写HTML以及如何为网站添加样式和功能。编写HTML文档HTML文档是由标签组成的,并且标签可以嵌套。...
    99+
    2023-05-21
  • 如何编写shell
    这篇文章主要介绍了如何编写shell,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。引语:我本人以前并没有写过shell脚本,也许是因为懒,也许是没有被逼到要去写shell的地...
    99+
    2023-06-09
  • 如何编写bytes2BSTR
    这篇文章主要介绍“如何编写bytes2BSTR”,在日常操作中,相信很多人在如何编写bytes2BSTR问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何编写bytes2BSTR”的疑惑有所帮助!接下来,请跟...
    99+
    2023-06-08
  • 如何进行MapReduce数据序列化读写概念的浅析
    这期内容当中小编将会给大家带来有关如何进行MapReduce数据序列化读写概念的浅析,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。MapReduce为处理简单数据格式(如日志文件)提供了简明的文档支持,但...
    99+
    2023-06-02
  • 如何编写AJAX Tab
    本篇内容主要讲解“如何编写AJAX Tab”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何编写AJAX Tab”吧!代码如下:// 163 ...
    99+
    2024-04-02
  • vscode如何编写javascript
    本篇内容主要讲解“vscode如何编写javascript”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vscode如何编写javascript”吧!安装Vscode首先,您需要下载和安装Vsc...
    99+
    2023-07-06
  • hbase如何修复
    小编给大家分享一下hbase如何修复,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!meta表修复一Java代码  收藏代码查看hbasemeta情况 &...
    99+
    2023-06-03
  • 如何简单解释 MapReduce 算法
    今天就跟大家聊聊有关如何简单解释 MapReduce 算法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在Hackbright做导师期间,我被要求向技术背景有限的学生解释MapRed...
    99+
    2023-06-17
  • 如何编写linux仿写chmod命令
    这篇文章主要讲解了“如何编写linux仿写chmod命令”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何编写linux仿写chmod命令”吧!代码如下:#include<stdio....
    99+
    2023-06-09
  • 如何编写mysql函数
    下文主要给大家带来如何编写mysql函数,希望这些内容能够带给大家实际用处,这也是我编辑如何编写mysql函数这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。mysql中函数的编写如下:create...
    99+
    2024-04-02
  • 如何编写JavaScript代码
    这篇文章主要介绍如何编写JavaScript代码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!如果你对于代码,除了关注是否能准确的执行业务逻辑,还关心代码本身是怎么写的,是否易读,那...
    99+
    2024-04-02
  • 如何编写Ajax和Asp
    本篇内容主要讲解“如何编写Ajax和Asp”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何编写Ajax和Asp”吧! ajax.h...
    99+
    2024-04-02
  • 如何编写vue组件
    这篇文章将为大家详细讲解有关如何编写vue组件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。vue组件的概念是变得越来越重要了噢。1、首先引入vueJS框架并且在底部ne...
    99+
    2024-04-02
  • 如何用TypeScript编写React
    这篇文章主要讲解了“如何用TypeScript编写React”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用TypeScript编写React”吧!Re...
    99+
    2024-04-02
  • 如何编写代码Review
    这篇文章主要介绍“如何编写代码Review”,在日常操作中,相信很多人在如何编写代码Review问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何编写代码Review”的疑惑...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作