hbase中執行mr任務

2021-09-27 03:03:08 字數 1670 閱讀 7558

1.檢視hbase的mr任務的執行

bin/hbase mapredcp

2.環境

永久生效,在/etc/profile

vi /etc/profile

export hbase_home=/opt/hbase

export hadoop_home=/opt/hadoop

並在hadoop-env.sh中配置(for迴圈後面配)

vi hadoop-env.sh

export hadoop_classpath=$hadoop_classpath:/opt/hbase/lib/*

臨時生效,hbase執行命令就行,每次啟動都要
export hbase_home=/opt/hbase

export hadoop_home=/opt/hadoop

export hadoop_classpath=`$/bin/hbase mapredcp

5.重啟

bin/stop-hbase .sh

//到hadoop下分發

xsync etc/hadoop/hadoop-env.sh //手動配置效果一樣

stopcluaster.sh //停止集群,stop效果一樣

util.sh //檢視集群當前狀態

//按照順序啟動zk,hadoop,hbase

startcluster.sh //zk有lead,follow才算啟動

bin/start-hbaes.sh

jps //檢視程序

4.執行官方的mr任務

//統計student表中有多少行資料

/opt/hadoop/bin/yarn jar lib/hbase-server-1.3.1.jar rowcounter student //模式

//命令

/opt/hadoop/bin/yarn jar /opt/hbase/lib/hbase-server-1.4.3.jar rowcounter aa

//結果

org.apache.hadoop.hbase.mapreduce.rowcounterrow

coun

term

appe

rro

wcou

nter

mapp

ercounters

rows=2

//使用mr將本地資料匯入到hbase

2)建立hbase表
create 『fruit』,『info』

3)在hdfs中建立fruit資料夾並上傳fruit.tsv檔案
hadoop dfs -mkdir /fruit2

hadoop dfs -put /fruit.tsv /fruit2

4)執行mr到hbase的fruit表中
/opt/hadoop/bin/yarn jar /opt/hbase/lib/hbase-server-1.4.3.jar importtsv

-dimporttsv.columns=hbase_row_key,info:name,info:color fruit

hdfs:

5)使用scan檢視匯入後結果
scan 『fruit』

mr執行原理

mapreduce思想 先分再合 分而治之 map 負責分,所謂的分指的是把大的複雜的任務劃分成小的任務,然後並行處理提高效率 如果任務不可以拆分或者任務內部存在著依賴關係 這樣不適合分而至之 reduce 負責合 所謂的合指的是把上步分成的小任務結果聚合成最終的結果 兩步加起來就是mapreduc...

MR執行流程

在這裡插入描述 資料進入maptask使用inputformat讀取資料 預設讀取格式是textinputformat 使用getsplits對資料目錄進行邏輯切分得到splits,有多少個splits 切片 就有多少個maptask 使用recordreader物件讀取 使用設定好的分隔符 切片裡...

5 ,排程 mr 任務

使用 oozie 排程 mapreduce 任務 找到乙個可以執行的 mapreduce 任務的 jar 包 可以用官方的,也可以是自己寫的 看到 5 個東西 解釋 job.properties 配置資訊 job with config class.properties lib 我們要執行的 jar...