大数据是无法在一定时间内使用常规工具捕捉、管理、处理的数据集合,是海量、高增长率和多样化、低价值密度的信息资产。要替代常规的数据工具如mysql等,需要新的处理模式才能具有更强的决策力和流程优化能力。
大数据主要解决海量数据存储和计算的问题。
公司大数据部门一般分为:
平台组 (Hadoop、Hbase、Spark等框架的搭建,集群性能监控和调优)
数据仓储组 (ETL工程师-数据清洗,Hive工程师-数据分析)
数据挖掘组 (算法工程师、推荐系统工程师、用户画像工程师)
报表开发组 (javaEE工程师)
一般所说的Hadoop是指的以Hadoop为中心的生态圈,包括Hadoop、Hive、HBase、Sparks、zookeeper等。
Hadoop优势
- 高可靠性 (底层维护至少3个副本)
- 高扩展性 (可以扩展数以千计的节点)
- 高效性 (并行工作,加快速度)
- 高容错性 (能都自动将失败的任务重新分配)
Hadoop1.x和Hadoop2.x的区别:
Hadoop1.x 的组成部分:Common(辅助工具)HDFS(数据存储)MapReduce(计算+资源调度)
Hadoop2.x 的组成部分:Common(辅助工具)HDFS(数据存储)MapReduce(计算)Yarn(资源调度)
在Hadoop1.x时代,Hadoop中的MapReduce同时处理逻辑运算和资源调度,耦合性较大;
在Hadoop2.x时代,增加了Yarn,Yarn只负责资源的调度,MapReduce只负责运算。
HDFS组成:
1)NameNode(nn):存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和块所在的DataNode等。
2)DataNode(dn):在本地文件系统存储文件块数据,以及数据块的校验和。
3)Secondary NameNode(2nn):用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照。
Yarn架构:
MapReduce介绍:
MapReduce将计算过程分为两个阶段:Map和Reduce
1)Map阶段并行处理输入数据
2)Reduce阶段对Map结果进行汇总