HDFS:
文件,块,副本
假如:一个文件 test.log, 大小为 200M,
一块(block),默认的 blocksize 是 128M, 两个块 = 一个 128M + 一个 72M
副本:HDFS 默认 3 副本
三个机器:node1:blk1 blk2 即使第一台机器挂掉了,也不影响
node2:blk1
node3:blk2
node4:blk1 blk2
MapReduce: 一个经典的 wordcount 的问题
文件内容:bear,apple,this,
some,you,love,apple,
love,bear,this
先是 split, 分成一行一行的,然后 map, 每行的单个内容分开,{bear,1},{apple,1}{this,1}然后 shuffle,{bear,[1,1]},{apple,[1,1]},{this,[1,1]}, 最后 reduce 得到最终结果{bear,2},{apple,2},{this,2}
YARN 资源调度器,Yet Another Resource Negotiator
负责整个集群的资源管理和调度
常用的 hadoop 发行版及选择:
Apache
优点:纯开源
缺点:不同版本 / 不同框架之间会有 jar 包冲突
CDH
优点:cm(cloudera manager)通过页面一键安装各种框架 升级
缺点:cm 不开源
Hortonworks:HDP
优点:原装 hadoop
缺点:企业级安全不开源