HDFS详解-03和MapReduce详解

HDFS:

1.启动顺序(面试题)
start-all.sh
nn dn snn
rm nm
2.hdfs dfsadmin
配置hadoop的目录
    ~]$ vi .bash_profile
        export HADOOP_HOME=/opt/software/hadoop
        export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
    ~]$ . .bash_profile
当前磁盘的多少:
    ~]$ hdfs dfsadmin -report
进入安全模式:
    ~]$ hdfs dfsadmin -safemode enter
安全模式是否可以上传:
    ~]$ echo "345">jepson.log
    ~]$ hdfs dfs -put jepson.log /
    put: Cannot create file/jepson.log._COPYING_. Name node is in safe mode.
退出安全模式:
    ~]$ hdfs dfsadmin -safemode leave
退出安全模式之后上传:
    ~]$ hdfs dfs -put jepson.log /
    ~]$ hdfs dfs -ls /
1、多态机器的磁盘存储分布不均匀?
解决方案:
    1.1 不加新机器,原机器的磁盘分布不均匀:
        一般设置50M
        ~]$ hdfs dfsadmin -setBalancerBandwidth  52428800

        Balancer bandwidth is set to 52428800
        sbin]$ ./start-balancer.sh  
           等价
        sbin]$ hdfs balancer 
        Apache Hadoop集群环境:  shell脚本每晚业务低谷时调度
        CDH集群环境: 忽略

    1.2 加新机器,原机器的磁盘比如450G,现在的新机器磁盘规格是5T
        在业务低谷时,先将多台新机器加入到HDFS,做DN;
        然后选一台的DN下架,等待HDFS自我修复块3份(网络和io最高的,也是最有风险性的)
2、一台机器的多个磁盘分布不均匀?
2.1无论加不加磁盘,且多块磁盘的分布不均匀
    https://hadoop.apache.org/docs/r3.0.0-alpha2/hadoop-project-dist/hadoop-hdfs/HDFSDiskbalancer.html

    hdfs diskbalancer -plan node1.mycluster.com
    hdfs diskbalancer -execute /system/diskbalancer/nodename.plan.json

    Apache Hadoop3.x版本才有
    CDH5.12+之后才有

    sbin]$  hdfs fsck / 

    Corrupt blocks:               100
    Missing replicas:              20 (1.0 %) ==:>发邮件给管理员

    删除块:
        sbin]$  hdfs fsck / -delete
    如果块需要,先复制到本地:
        sbin]$  hdfs dfs -get /xxx/xxx ./
        sbin]$ hdfs haadmin

    打印出hadoop的环境变量
     [hadoop@rzdatahadoop002 sbin]$ hadoop classpath

     例如:
        A盘450G 
        B盘400G

        新来的data01,会选择B盘,让B盘追上A盘

MapReduce:

Hadoop1.x MR1(计算 + 资源作业调度)
Hadoop2.x MR2(计算)
MR1进程:(过时了,但是面试官最喜欢问的)
JobTracker
TaskTracker:map task、reduce task
MR2进程:
写代码打成jar包提交给yarn运行即可
好处:
    1.不需要部署
    2.架构设计(面试题***** + 背) ---> MR Job提交到Yarn的工作流程 ---> Yarn架构设计、Yarn的工作流程
MapReduce2架构设计(Yarn工作流程(mr提交应用程序))(*****)
1.用户向Yarn中提交应用程序,其中包括ApplicationMaster程序、启动ApplicationMaster的命令、用户程序等。
2.ResourceManager为该应用程序分配第一个Container,并与对应的Node-Manager通信,要求它在这个Container中启动应用程序的ApplicationMaster。
3.ApplicationMaster首先向ResourceManager注册,这样用户可以直接通过ResourceManager查看应用程序的运行状态,然后它将各个任务申请资源,并监控它的运行状态,直到运行结束,即重复步骤4-7。
4.ApplicationMaster采用轮询的方式通过RPC协议向ResourceManager申请和领取资源。
5.一旦ApplicationMaster申请到资源后,便与对应的NodeManager通信,要求它启动任务。
6.NodeManager为任务设置好运行环境(包括环境变量、JAR包、二进制程序等)后,将任务启动命令写到一个脚本中,并通过运行该脚本启动任务。
7.各个任务通过某个RPC协议向ApplicationMaster汇报自己的状态和进度,以让ApplicationMaster随时掌握各个任务的运行状态,从而可以在任务失败时重新启动任务。在应用程序运行过程中,用户可随时通过RPC向ApplicationMaster查询应用程序的当前运行状态。
8.应用程序运行完成后,ApplicationMaster向ResourceManager注销并关闭自己。

当用户向Yarn提交一个应用程序后,Yarn将分为两个阶段运行该应用程序:
    a.第一个阶段是启动ApplicationMaster
    b.第二个阶段是由ApplicationMaster创建应用程序,为它申请资源,并监控它的整个运行过程,直到运行完成。

Yarn:

ResourceManager:
Application Manager:应用程序管理
Scheduler:调度器
NodeManager:
Container:容器(*****) Yarn的资源抽象的概念,封装了某个NM的多维度资源:memory + cpu
容器里运行map task、reduce task
MR Application Master:
        每个MR的作业只有一个,且是运行在NM的container中

词频统计:wordcount

hadoop]$ vi 1.log
    bbb 123 1 2 2
    aaa bbb ccc
    bbb 123 1 2 2
    aaa
    123
    bbb
    ccc
    xxxxx
    www.ruozedata.com
hadoop]$ hdfs dfs -mkdir -p /wordcount/input
hadoop]$ hdfs dfs -put 1.log /wordcount/input
hadoop]$ hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.1.jar \
> wordcount /wordcount/input /wordcount/output1

hadoop]$ hdfs dfs -ls /wordcount/output1
hadoop]$ hdfs dfs -cat /wordcount/output1/part-r-00000
    1       1
    123     2
    2       2
    aaa     2
    bbb     3
    ccc     2
    www.ruozedata.com       1
    xxxxx   1

http://blog.itpub.net/30089851/viewspace-2015610/

shuffle 洗牌(工作:*****)调优点 hive+spark

在Map和Reduce中间进行的。

花2个小时看:
    http://blog.itpub.net/30089851/viewspace-2095837/
Map:映射
Reduce:归约(合并)
http://blog.itpub.net/30089851/viewspace-2095837/

http://hadoop.apache.org/docs/r2.8.3/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html

作业:

1.hadoop高级命令
2.MR提交流程(面试*****)
3.WordCount案例+理解图+shuffle(******)

【来自@若泽大数据】

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,902评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,037评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,978评论 0 332
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,867评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,763评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,104评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,565评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,236评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,379评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,313评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,363评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,034评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,637评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,719评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,952评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,371评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,948评论 2 341

推荐阅读更多精彩内容