赞
踩
大数据是当前最热门的词之一, 已经渗透到了各个行业与领域, 成为重要的
决策手段。 在当前大数据环境下, 海量数据, 呈爆发式增长, 数据类型复杂多样,
因此, 对数据的处理需要更强大的技术和手段, 因此, 衍生出了很多大数据处理
框架, 其中 Hadoop、 Spark 和 Storm 是比较常用的大数据框架。
一、 大数据框架之 Hadoop
Hadoop 是大数据批处理框架, Hadoop 的处理功能来自 MapReduce 引擎, 包
含多个组件, 通过配合使用可处理批数据, 其处理技术复核使用键值对的 map、
shuffle、 reduce 算法要求, 其基本处理过程如下:
1. 从 HDFS 文件系统读取数据集;
2. 将数据集拆分成小块并分配给所有可用节点;
3. 针对每个节点上的数据子集进行计算(计算的中间态结果会重新写入
HDFS) ;
4. 重新分配中间态结果并按照键进行分组;
5. 通过对每个节 点 计算的 结 果 进行 汇 总 和 组合对每个键的 值进行
“Reducing” ;
6. 将计算而来的最终结果重新写入 HDFS。
Hadoop 是一套久经考验的批处理框架, 适合处理对时间要求不高的非常大
规模数据集, 通过非常低成本的组件即可搭建完整功能的 Hadoop 集群, 使得这
一廉价且高效的处理技术可以灵活应用在很多案例中, 与其他框架和引擎的兼容
与集成能力使得 Hadoop 可以成为使用不同技术的多种工作负载处理平台的底层
基础。
二、 大数据框架之 Spark
Spark 是一种包含流处理能力的下一代批处理框架, 与 Hadoop 相比, Spark
主要侧重于通过完善的内存计算和处理优化机制加快批处理工作负载的运行速
度。
Spark 是多样化工作负载处理任务的最佳选择。 Spark 批处理能力以更高内
存占用为代价提供了无与伦比的速度优势。 对于重视吞吐率而非延迟的工作负载,
则比较适合使用 Spark Streaming 作为流处理解决方案。
三、 大数据框架之 Storm
Storm 是一款极低延迟的流处理框架, 是近实时处理的工作负载的最佳选择,
该技术可处理非常大量的数据, 比其他方案更加快捷!
对于延迟需求很高的纯粹的流处理工作负载, Storm 可能是最适合的技术。
该技术可以保证每条消息都被处理, 可配合多种编程语言使用。 由于 Storm 无法
进行批处理, 如果需要这些能力可能还需要使用其他软件。 如果对严格的一次处
理保证有比较高的要求, 就需要选择其他的大数据框架!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。