1.大数据概述

1.列举Hadoop生态的各个组件及其功能、以及各个组件之间的相互关系,以图呈现并加以文字描述。

1.大数据概述

Zookerper: 主要解决分布式环境下的数据管理问题:统一命名,状态同步,集群管理,配置同步等。

Oozie: 是一个可扩展的工作体系,集成于Hadoop的堆栈,用于协调多个MapReduce作业的执行。它能够管理一个复杂的系统,基于外部事件来执行,外部事件包括数据的定时和数据的出现。

Hive: Hive是建立在 Hadoop 上的数据仓库基础构架,可以使用SQL进行数据查询,由Hive将SQL查询转换为MapReduce的job在Hadoop集群上执行。

Pig: 将脚本转换为mapreduce任务在hadoop上执行。通常用于离线分析。

MapReduce: 是一种计算模型,用以进行大数据量的计算。其中Map对数据集上的独立元素进行指定的操作,生成键-值对形式中间结果。Reduce则对中间结果中相同“键”的所有“值”进行规约,以得到最终结果。

HBase: 提供了对大规模数据的随机、实时读写访问,同时,HBase中保存的数据可以使用MapReduce来处理,它将数据存储和并行计算完美地结合在一起。

Sqoop: 主要用于传统数据库和Hadoop之间传输数据。数据的导入和导出本质上是Mapreduce程序,充分利用了MR的并行化和容错性。

Flume: Cloudera开源的日志收集系统,具有分布式、高可靠、高容错、易于定制和扩展的特点。它将数据从产生、传输、处理并最终写入目标的路径的过程抽象为数据流。

Spark: 是专为大规模数据处理而设计的快速通用的计算引擎,拥有Hadoop MapReduce所具有的优点。采用基于内存的分布式数据集,优化了迭代式的工作负载以及交互式查询。

yarn: 是一种新的Hadoop资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度。

HDFS: 是一个高度容错的系统,能检测和应对硬件故障,通过流式数据访问,提供高吞吐量应用程序数据访问功能。

2.对比Hadoop与Spark的优缺点。

优点:
① Spark对标于Hadoop中的计算模块MR,但是速度和效率比MR要快得多
② Spark可以使用基于HDFS的HBase数据库,也可以使用HDFS的数据文件,还可以通过jdbc连接使用Mysql数据库数据;Spark可以对数据库数据进行修改删除,而HDFS只能对数据进行追加和全表删除
③ Hadoop中中间结果存放在HDFS中,每次MR都需要刷写-调用,而Spark中间结果存放优先存放在内存中,内存不够再存放在磁盘中,不放入HDFS,避免了大量的IO和刷写读取操作;

缺点:
① Spark没有提供文件管理系统,所以,它必须和其他的分布式文件系统进行集成才能运作,它只是一个计算分析框架,专门用来对分布式存储的数据进行计算处理,它本身并不能存储数据

3.如何实现Hadoop与Spark的统一部署?

Spark可运行于YARN之上,与Hadoop进行统一部署,即“Spark on YARN”,资源管理和调度依赖YARN,分布式存储则依赖HDFS。

上一篇:JavaScript 调试&显示变量


下一篇:HDFS