目录
数据运维的概念以及hadoop概念
运维需要做的工作:收集数据,搭建平台,数据分析,反馈结果
大数据能做什么
企业组织利用相关数据分析帮助他们降低成本,提高效率,开发新产品,做出更明智的业务决策等
把数据集合并后进行分析得出的信息和数据关系性,用来察觉商业趋势,判定研究质量,
大规模并行出来数据库,数据挖掘电网,分布式文件系统或数据库,云计算和可扩展的存储系统等
大数据的特性:数量,速度,种类,真实性,价值
hadoop
一种分析和处理海量数据的软件平台,是开源软件,使用java开发,提供一个分布式基础架构,其特点是高效性,高扩展性,高效性,高容错性,低成本.
hadoop常用组件(红色是一定需要安装的)
HDFS:hadoop分布式文件系统(核心组件)
MapReduce:分布式计算框架(核心组件)
Yarn:集群资源管理系统(核心组件)
Zookeeper:分布式协助服务
Hbase:分布式列存数据库
Hive:基于Hadoop的数据仓库
Sqoop:数据同步工具
Pig:基于Hadoop的数据流系统
Mahout:数据挖掘算法库
Flume:日志收集工作
HDFS角色及概念
NameNode:Master节点,管理HDFS的名称空间和数据映射信息,配置副本策略,处理所有客户端请求
Secondary NameNode :定期合并fsimage和fsedits,推送给NameNode,紧急情况下,可辅助恢复NameNode.
但是Seconddary NameNode并非NameNode的热备
DataNode:数据存储节点,存储实际数据,汇报存储信息给NameNode
Client:切分文件,访问HDFS,于NameNode交互,获取文件位置信息,与DataNode交互,获取和写入数据
Block:每块缺省128MB大小,每块可以多个副本
数据在客户端就会被分片,之后访问NameNode节点,之后NameNode会通知客户端,存储在哪里,HDFS Client收到了对应的存储信息,将数据存储到DataNode节点上,当成功存储成功之后,写通知NameNode,并把对应的信息写入到fsimage,fsimage记录了对应的存储的地址.fsedits(文件变更日志)
MapReduce角色及概念
JobTracker :master节点只有一个,管理所有作业/任务的监控\错误处理等,将任务分解成一系列任务,并分派给TaskTracker
TaskTracker:slave节点,一般是多台,运行Map Task和Reduce Task,并与JobTracker交互,汇报任务状态.
Map Task:解析每条数据记录,传递给用户编写的map()并执行,将输出结果写入本次磁盘.如果为map-only作业,直接写入HDFS.
Reduce Task:从Map Task的执行结果中,远程读取输入数据,对数据进行排序,将数据按照分组传递给用户编写的Reduce函数执行
Yarn角色及概念
ResourceManager:处理客户端请求,启动/监控ApplicMaster,监控NodeManager,资源[分配与调度
NodeManager:单个节点上的资源管理,处理来自ResourceManager的命令,处理来自ApplicationMaster的命令
Container:对任务运行环境的抽象,封装了CPU,内存等,多维资源以及环境变量,启动命令等任务运维相关的信息资源分配与调度
ApplicationMaster