自定义 MR1 之 Mapper | 学习笔记

简介: 快速学习自定义 MR1 之 Mapper。

开发者学堂课程【分布式数据库 HBase 快速入门:自定义 MR1 之 Mapper 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/101/detail/1755


自定义 MR1 之 Mapper


内容介绍

一、自定义 MR1 之 Mapper


一、自定义 MR1 之 Mapper

自定义 HBase-MapReduce1

目标:将 fruit 表中的一部分数据,通过 MR 迁入到 fruit_mr 表中。

分步实现:

1.构建 ReadFruitMapper 类,用于读取 fruit 表中的数据

package com.atguigu . hbase_mr;  

import java.io.IOException;  

import org.apache.hadoop.hbase.cell;  

import org. apache.hadoop. hbase.cellutil;  

import org.apache.hadoop.hbase.client. Put;  

import org.apache.hadoop.hbase.client. Result;  

Import org.apache.hadoop.hbase.io. ImmutableByteswritable;

import org.apache.hadoop.hbase.mapreduce.TableMapper;

import org.apache.hadoop. hbase.util.Bytes;  

Public              class              ReadFruitMapper           extends

TableMapper {

@override

protected void map(ImmutableByteswritable key,Result value,Context context)  

throws IOException,InterruptedException {

Tota1 time spent by a17 maps in occupied slots (ms)=5222Tota1 time spent by a17 reduces in occupied slots (ms)=0Total time spent by al7 map tasks (ms)=5222

Tota1 vcore-mi11iseconds taken by a17 map tasks=5222

Total megabyte-mil7iseconds taken by a17 map tasks=5347328

Map-Reduce Framework

Map input records=3Map output records=3Input split bytes=96spi77ed Records=oFailed shuffles=oMerged Map outputs=o

Gc time elapsed (ms)=272CPu time spent (ms)=2510

Physical memory (bytes) snapshot=222109696virtua7 memory (bytes) snapshot=3001012224Tota1 committed heap usage' (bytes)=152043520

ImportTsv

Bad Lines=o

File Input Format counters

Bytes Read=54

File output Format counters

Bytes written=o

[atguigu@hadoop102 hbase]$

/**

*Extends the base Mapper class to add the required input Key  

*and value classes.

*

*@param  The type of the key.

*@param  The type of the value.

*@see org.apache. hadoop. mapreduce.Mapper

*/

@InterfaceAudience.Public

@InterfaceStability.Stable

public abstract class TableMapper

extends Mapper{

}

import org.apache.hadoop. hbase. mapreduce.TableMapper;

import org.apache. hadoop.hbase.uti1.Bytes;

import java.io.IOException;

public class FruitMapper extends TableMapper

@Override

protected void map(ImmutableBytesWritable key,Result value,Context context) throws

IOException,InterruptedException {

//构建Put对象

Put put = new Put(key.get()) ;

//遍历数据

Cell[] cells = value.rawCells();

cell[] cells = value.rawCells();

for (Cell cell : cells){

if ("name".equals(Bytes.toString(CellUtil.cloneQualifier(cell)))){

  Putadd(cell);

}

}

相关文章
|
Linux KVM 虚拟化
如何恢复故障KVM虚拟机qcow2磁盘镜像文件LVM分区中的数据
如何恢复故障KVM虚拟机qcow2磁盘镜像文件LVM分区中的数据
993 0
如何恢复故障KVM虚拟机qcow2磁盘镜像文件LVM分区中的数据
|
12月前
|
Oracle 关系型数据库 虚拟化
还在破解VMware?免费了,你知道吗?
VMware 现在对个人用户完全免费!无需破解,轻松使用。Workstation Pro 17.5.2 和 Fusion Pro 13.5.2 已正式发布,快来下载体验吧!下载前需登录 Broadcom Support Portal,注册账号即可。
630 0
|
11月前
|
缓存 异构计算
DashInfer-VLM,多模态SOTA推理性能,超vLLM!
DashInfer-VLM是一个针对于视觉多模态大模型VLM的推理架构,特别优化了Qwen VL模型的推理加速,DashInfer-VLM和其他的VLM的推理加速框架最大的区别是, 它把VIT部分和LLM部分进行了分离,并且VIT和LLM的运行是并行运行,不互相干扰。
1468 16
|
程序员
【工具使用】Intellij IDEA 自动清除无效 import 包 和 清除无效 import包 的快捷键
【工具使用】Intellij IDEA 自动清除无效 import 包 和 清除无效 import包 的快捷键
3956 0
|
9月前
|
JSON 监控 数据可视化
《Apipost协议支持深度解析,高效解决SocketIO调试难题》
实时通信调试中,主流工具如Apifox对SocketIO协议支持不足,导致效率低下。而国产工具Apipost原生支持SocketIO,具备自定义事件管理、连接状态可视化等功能,大幅提升调试效率与准确性。相比Postman需插件支持、Apifox完全不兼容,Apipost在协议级兼容、零代码渗透及国产技术突围上展现核心优势,助力团队高效协作与维护。选择正确工具,告别“伪实时”调试,探索更广泛的协议支持(如gRPC),迎接未来API工具的战场——协议覆盖率竞争。
|
JavaScript Java 关系型数据库
Springboot+vue的图书管理系统(有报告),Javaee项目,springboot vue前后端分离项目。
Springboot+vue的图书管理系统(有报告),Javaee项目,springboot vue前后端分离项目。
Springboot+vue的图书管理系统(有报告),Javaee项目,springboot vue前后端分离项目。
|
2天前
|
数据采集 人工智能 安全
|
11天前
|
云安全 监控 安全
|
3天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
994 151